优秀的编程知识分享平台

网站首页 > 技术文章 正文

Python之open()函数

nanyue 2024-11-22 18:34:07 技术文章 1 ℃

语法参考

open(file,mode='r',buffering=-1,encoding=None,erros=Node,newline=None,closefd=True,opener=Nobe)

file:必须参数,文件路径,表示需要打开文件的相对路径或者绝对路径,注意文件路径需要使用单引号或双引号括起来

mode:可选桉树,用于制定文件的打开模式,常见为只读模型r、只写模型w、追加模式a,默认的打开模式为只读r,实际调用时可以组合进行

mode的参数值及说明

r 只读模式(默认模式,文件的指针将会放在文件的开头,文件必须存在

rb 二进制格式打开文件,并且采用只读模型。文件的指针将会放在文件的开头,一般用于非文本文件,如图片、声音等,文件必须存在

r+ 打开文件后,可以读取文件内容,也可以写入新的内容覆盖原有内容,从文件开头进行覆盖,文件必须存在

rb+ 二进制格式打开文件,并且采取读写模式,文件的指针将会放在文件的开头,一般用于非文本文件,如图片、声音等,文件必须存在

w 只读模式,如果文件存在,则将其覆盖,否则创建新文件,必须保证文件所在目录存在,文件可以不存在,必须保证文件所在目录存在,文件可以不存在

wb 二进制格式打开文件,并且采取只写模式,一般用于非文本文件,如图片、声音等,必须保证文件所在目录存在,文件可以不存在,必须保证文件所在目录存在,文件可以不存在

w+ 打开文件后,先清空文件内容,使其变成一个空的文件,对这个文件有读写权限,必须保证文件所在目录存在,文件可以不存在

wb+ 二进制格式打开文件,并且采取读写模式,一般用于非文本文件,如图片、声音等,必须保证文件所在目录存在,文件可以不存在

a 追加模式打开文件,如果文件存在,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件写入

ab 二进制格式打开文件,并且采取追加模式,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件写入

a+ 以读写模式打开文件,如果文件存在,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件用于读写

ab+ 二进制格式打开文件,并且采取追加模式,如果文件存在,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件用于读写

buffering:可选参数,用于制定读写文件的缓冲模式,0表示不缓存,1表示缓冲,如果大于1,则表示缓冲区的大小

encoding:表示读写文件时所用的文件编码格式,一般使用UTF-8

erros:表示读写文件时碰到错误的报错级别,常见的级别有

strict 严重级别,默认级别,字符编码有错及抛出异常,参数值传入None即按此执行

ignore 忽略级别,字符编码有错时,忽略掉

replace 替换级别,字符编码有错时,替换为?

newline:表示用于区分换行符,只对文本模式有效,可以取值None、\n、\r、\r\n

closefd:表示传入的file参数类型(默认为True),传入文件路径时一定为True,传入文件句柄则为False

文件操作的常用方法

file.read(size)

读取文件按的全部或部分内容,size为读取文件内容的字符数

file.readline(size)

返回文件中一行的内容,size为指定读取一行内容的范围

file.readlies()

返回一个列表,列表中的每个元素为文件中的一行数据

file.write()

将内容写入文件

file.tell()

返回一个整数,表示文件指针的当前位置,即在二进制模式下距离文件头的字节数

file.seek(offset,whence)

将文件的指针移动到新的位置,位置通过字节数进行指定

offset 用于指定移动的字符个数,其具体位置与whence有关

whence 用于指定从什么位置开始计算,0为开头,1为当前,2为文末,默认为0

file.close()

关闭打开的文件

最近发表
标签列表