文件读写
- 文件的读写就是通过python程序来对计算机中的各种文件进行增删改查的操作
- 操作文件的步骤:
- 1、打开文件
- 2、对文件进行读写操作,然后保存
- 3、关闭文件
- 参数file:要打开的文件的名字(路径)
-
返回值:返回的是一个对象,代表的是当前打开的文件
- 这个代码是需要在运行前提前创建好需要打开的文件
- 注意:代码里是直接写的名字,说明这个文件和代码的文件的位置是同一级
file_name = 'yinye.txt' file_obj = open(file_name) print(file_obj)
-
文件执行完成后需要关闭文件,否则会占用内存,影响电脑的性能
-
正规写读写的操作需要配合异常处理程序
-
我们一般来说会使用with…as…语句配合使用文件读写
-
显然,代码中有对格式的更改,一般情况下使用utf-8的格式,但是以下的代码使用的是gbk编码,由于这个文件中的内容是用python写进去时使用的是gbk,所以读的时候也使用gbk编码格式。
-
r只读
-
r+可读可写
-
w只写
-
w+写读
-
a追加
-
详细信息可参考官方文档
file_name = r'yinye.txt' try: with open(file_name,encoding='gbk') as f: print(f.read()) except FileNotFoundError: print(f'{file_name}不存在')
-
运行的内容过长,截取部分
-
文件读写进阶用法
-
写入的时候定义一个变量,给他一个值,read的参数默认是-1,给他传的值是多少,一次就会读取多少,比如说内存不够大,我们还要读取一个非常大的文件,这样做就会避免一次性读一个过大的文件而卡死。
-
写入是直接使用二进制写入,后面就不再介绍二进制写入音频、视频等。
-
b二进制文件
-
rb读取
-
wb写入
-
ab追加
-
详细信息可参考官方文档
file_name = r'C:\Users\Administrator\Desktop\ABC.txt' with open(file_name,'rb') as f: new_name = r'123.txt' with open(r'yinye.txt','wb') as new_name: chunk = 100 while True: content = f.read(chunk) if not content: break new_name.write(content)
-
- 运行后会生成一个123.txt的文件,但是由于是以二进制的方式写入的,所以123.txt的结果就是乱码
- 点击后的效果