Python内置了读写文件的函数,用法与C兼容
读文件
open()
使用内置的open()
函数,传入文件名和标识符:
>>> f = open('test.txt', 'r')
若文件不存在,open()
函数会抛出一个IOError
的错误,并给出错误码和详细信息
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
FileNotFoundError: [Errno 2] No such file or directory: 'test.txt'
read()
打开成功后,使用read()
一次性读取文件的全部内容,Python将内容读到内存中,用str
对象存储
readline()
|readline()
可以每次读取一行的内容
readlines()
|readlines()
一次读取所有内容并按行返回list
close()
使用完毕后,需要调用close()
关闭文件
with语句
为避免忘记调用close()
,Python引入with
语句自动调用close()
with open('test.txt', 'r') as f:
print(f.read())
写文件
与读文件类似,唯一区别是传入标识符'w'
或'wb'
表示写文本文件或写二进制文件
所有标识符定义及其意义见官方文档
file-like Object (file object文件对象)
在Python中,像open()
函数返回的这种有read()
或write()
方法的对象统称为file-like Object(或file object)
共有三种类别的文件对象:原始二进制文件, 缓冲二进制文件 以及 文本文件,创建文件对象的规范方式是使用open()
函数。