python对文件的操作方法汇总
作者:Tynam.Yang 时间:2023-04-13 18:52:59
规则:open(file_name[,access_mode][,buffering])
参数说明
file_name:、文件路径+文件名称,加路径从路径开始访问,不加路径直接访问的是与你编辑的py文件在同一目录下的文件
access_mode:打开文件的方式:默认为只读模式,r
其他打开文件的方式:
'r':只读
'w':写
'a':追加
'r+' == r+w : 可读可写,主要为读,若文件不存在会出现保存
'w+' == w+r :可读可写,主要为写,文件若不存在就创建一个文件
'a+' ==a+r :可追加可写,文件若不存在就创建
如果为二进制文件,则在后面加个b,例如:wb
对文件操作时要注意编码格式,不然会出现乱码。默认格式为utf-8
# --*-- coding:UTF-8 --*--
# 打开文件并读取文件
f = open(r'file.text')
print(f.read())
f.close()
# 结果:你发顺丰发撒疯 是发撒疯 发
# open 打开, read为读取文件内容, close为关闭文件
# 打开一个不存在的文件
# f = open(r'/User/xxx/s.text')
# 结果:FileNotFoundError: [Errno 2] No such file or directory: '/User/xxx/s.text'
# 如果直接打开文件的话必须要关闭文件,写的时候不关闭会写不进去内容的
# 用with open的时候直接使用,就不需要关闭文件了
with open(r'file.text') as fp:
print(fp.read())
# 结果:你发顺丰发撒疯 是发撒疯 发
# fp是将文件缩写,以fp代替文件
'''
读取文本的三种方法:
read:读取文本的所有内容
readline:读取文章的一行
readlines() 自动将文件内容分析成一个行的列表读取
'''
# 写文件
with open('learning.txt', 'w') as fp:
fp.write('Hello, world!')
# 结果:自动新建一个learning.txt的文件,并且存入内容hello ,world!
'''
写入文本的两种方法:
write():将内容写入文本中
writelines():针对列表的操作
'''
# 举例说明readlines和writelines
with open('text.txt','w') as fp:
fp.writelines(['123\n', '234\n', '345\n', '456\n',])
# 结果:
'''
123
234
345
456
'''
with open('text.txt','r') as fp:
print(fp.readlines())
# 结果:['123\n', '234\n', '345\n', '456\n']
# 文本后面追加内容用a模式,不然就直接覆盖了之前的内容
with open('learning.txt', 'a') as fp:
fp.write('\nHello, world!')
# 结果:
'''
Hello, world!
Hello, world!
'''
来源:https://www.cnblogs.com/tynam/p/8744395.html
标签:python,文件,操作
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Typescript 封装 Axios拦截器方法实例
2023-07-02 16:38:19
浅谈python的深浅拷贝以及fromkeys的用法
2023-07-20 04:45:33
![](https://img.aspxhome.com/file/2023/1/101181_0s.png)
Golang异常处理之defer,panic,recover的使用详解
2023-08-06 14:20:09
基于Python生成个性二维码过程详解
2021-08-05 13:04:38
![](https://img.aspxhome.com/file/2023/6/69456_0s.png)
vue中Axios的封装与API接口的管理详解
2024-05-02 16:23:39
![](https://img.aspxhome.com/file/2023/8/130838_0s.jpg)
如何使用表单发送电子邮件?
2010-05-16 15:13:00
用我喜欢的字体(Cufon)
2009-12-11 18:51:00
详解Django+Uwsgi+Nginx 实现生产环境部署
2022-11-10 10:37:41
教程javascript的function(函数)
2007-09-30 13:38:00
![](https://img.aspxhome.com/file/UploadPic/20079/30/200793013468441s.gif)
高性能WEB开发 web性能测试工具推荐
2022-06-09 00:29:59
![](https://img.aspxhome.com/file/2023/7/127207_0s.gif)
详解在Python中处理异常的教程
2023-08-30 15:36:26
Python列表生成器的循环技巧分享
2023-10-06 21:24:28
![](https://img.aspxhome.com/file/2023/8/63238_0s.png)
PyTorch详解经典网络ResNet实现流程
2022-08-06 09:40:32
![](https://img.aspxhome.com/file/2023/7/101587_0s.png)
Python 任务自动化工具nox 的配置与 API详情
2022-05-02 20:57:30
浅谈一下mysql数据库底层原理
2024-01-27 21:19:39
python神经网络Pytorch中Tensorboard函数使用
2021-03-30 04:27:01
![](https://img.aspxhome.com/file/2023/3/78583_0s.png)
IE下float产生双倍margin
2007-12-26 12:29:00
![](https://img.aspxhome.com/file/UploadPic/200712/26/20071226123712415s.gif)
提醒各位一下,IE透明会失效的
2009-03-31 12:48:00
![](https://img.aspxhome.com/file/UploadPic/20093/31/icon_lol-37s.gif)
SQL Server中调用C#类中的方法实例(使用.NET程序集)
2024-01-23 17:24:56
Go语言利用Unmarshal解析json字符串的实现
2024-05-09 09:54:25