文件操作的基础模式有三种(默认的操作模式为r模式):
-
r模式为read
-
w模式为write
-
a模式为append
文件读写内容的格式有两种(默认的读写内容的模式为b模式):
-
t模式为text
-
b模式为bytes(二进制)
-
注意的是:t、b这两种模式均不能单独使用,都需要与r/w/a之一连用
b模式是通用的模式,因为所有的文件在硬盘中都是以二进制的形式存储的,需要注意的是:b模式读写文件,一定不能加上encoding参数,因为二进制无法再编码
a: 可以追加。文件存在,则在文件的末端写入内容;文件不存在的时候会创建文件后写入内容
w: 只能写,不能读,文件存在的时候回清空文件后再写入内容;文件不存在的时候会创建文件后写入内容。
如果文件非常大的话,可能会造成内存爆掉,即电脑卡死。因此可以使用f.readline()/f.readlines()读取文件内容。
r: read,只读模式,只能读不能写,文件不存在时报错
with open()方法不仅提供自动释放操作系统占用的方法,并且with open可以使用逗号分隔,一次性打开多个文件,实现文件的快速拷贝。
with open('32.txt', 'rb') as fr,
open('35r.txt', 'wb') as fw:
f.write(f.read())