文件

文件

open()函数方法

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

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

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

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

1
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) 向文件写入序列,每行一个元素,返回写入的行数