Skip to content

文件

open()函数方法

Python 中open()方法用于打开文件,并返回文件对象.

在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。

注意:使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。

open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。

python
open(file, mode='r')

mode 参数的可选值有:

模式描述
t文本模式(默认值)
x新建只写文件,如果文件已存在则报错
b二进制模式
+打开一个可读写的文件
U文本模式(python3 中已废弃)
r读模式(默认值)
rb二进制读模式
r+读写模式(从文件开头开始)
rb+二进制读写模式
w写模式(文件内容会被清空)
wb二进制写模式
w+读写模式(文件内容会被清空)
wb+二进制读写模式
a追加模式(从文件末尾开始写)
ab二进制追加模式
a+读写追加模式(从文件末尾开始写)
ab+二进制读写追加模式

默认为文本模式,如果要以二进制模式打开,加上 b

file 对象

file 对象使用 open 函数来创建,下表列出了 file 对象常用的函数:

函数描述
file.close()关闭文件
file.flush()刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件
file.fileno()返回一个整型的文件描述符
file.isatty()如果文件连接到一个终端设备返回 True,否则返回 False
file.next用于迭代读取文件,在文件末尾调用时返回空字符串,python2 中使用 file.next(),python3 中使用 file.readline()
file.read([size])从文件读取指定的字节数,如果未给定或为负则读取所有
file.readline([size])读取整行,包括 \n 字符,如果未给定或为负则读取所有,python2 中使用 file.readline(),python3 中使用 file.readline()
file.readlines([size])读取所有行并返回列表,如果未给定或为负则读取所有,python2 中使用 file.readlines(),python3 中使用 file.readlines()
file.seek(offset, whence=0)设置文件当前位置
file.tell()返回文件当前位置
file.truncate([size])截断文件,截断文件到给定大小(默认为当前位置),然后移除超出大小的部分
file.write(str)向文件写入字符串,返回写入的字符数
file.writelines(sequence)向文件写入序列,每行一个元素,返回写入的行数