Python3中文件的使用
open()方法
Python中用open()方法打开一个文件,并返回一个文件对象,对文件的处理都需要用到这个函数。如果该文件打不开,则会抛出OSError。
注意:在使用open()方法时,要保证关闭文件,即调用close()方法。
open()函数常用的两个参数是:文件名(file)和模式
格式如下:
open(file,mode=’r’)
完整的语法格式为:
open(file,mode=’r’,buffering=1,encoding=None,newline=None,closefd=True,opener=None)
参数说明:
file:文件路径(必须)
mode:文件打开模式(可选)
buffering:设置缓冲
encoding:一般使用utf8
errors:报错级别
newline:区分换行符
closefd:传入的file参数类型
mode参数:
t:文本模式(默认)
x:写模式,新建一个文件,如果该文件存在则会报错
b:二进制模式
+:打开一个文件进行更新(可读可写)
r:以只读的方式打开文件,
rb:以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等
r+:打开一个文件用于读写。文件指针将会放在文件的开头。
rb+:以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片
w: 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb: 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+:打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+:以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等
a: 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入
ab: 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+:打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
Ab+:以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
文件中常用的一些函数
file.close():关闭文件
file.flusf():刷新文件缓冲直接将文件内部缓冲区的数据写入文件
file.next():返回文件的下一行
file.read([size]):从文件读取指定的字节数,如果为给定则读取所有
file.readline([size]):读取整行(包括’\n’字符
file.readlines([sizeint]):读取所有行,并返回列表,如果sizeint>0,返回总和大约为sizeint字节的行,实际读取的的值可能比sizeint较大,因为需要填充缓冲区,
file.seek():设置文件当前位置
file.tell():返回文件当前位置
file.truncate([size]):从文件的首行首字母开始截断,截断文件为size个字符,无size则表示从当前位置截断,截断之后后面的所有字符被删除
file.write(str):将字符串写入文件,返回的是写入的字符长度
file.writelines(sequence):向文件写入一个序列字符串列表,如果需要换行,则要自己加入每行的换行符。