文件读写操作:内置open()函数
Python中的open() 方法是用于打开一个文件,如果该文件损坏或者无法打开,会抛出 OSError
完整语法格式:
open(file, mode=‘r’, buffering=None, encoding=None, errors=None, newline=None, closefd=True)
open()函数常用形式是接收两个参数:文件名(file)和模式(mode)
参数说明:
file: 表示将要打开的文件的路径(绝对路径或者当前工作目录的相对路径)
mode: 是一个可选字符串,默认值是“mode=r”,意味着当什么值都不传时,文本模式为打开并读取。
'r' 读取(默认)
'w' 写入,并覆盖文件源数据
'x' 创建,如果文件已存在则失败
'a' 写入,如果文件存在则在末尾追加,追加成功后,会打印出追加了几个字符
'b' 二进制模式
't' 文本模式(默认)
'+' 打开用于更新(读取与写入)
buffering: 是一个可选的整数,用于设置缓冲策略
encoding: 是用于解码或者编码文件的编码名称,这只在文本模式下使用
errors: 是一个可选的字符串参数,用于指定如何处理编码和编码错误。这个不能在二进制模式下使用
newline: 区分换行符(它仅适用于文本模式)。它可以是 None,'','\n','\r' 和 '\r\n'。
closefd: 传入的file参数类型
mode值 | 描述 |
---|---|
mode=r | 以只读方式打开文件,文件指针会放在文件的开头位置 |
mode=r+ | 打开一个文件用于读写。文件指针将会放在文件的开头 |
– | – |
mode=w | 以只写方式打开文件,如果文件已存在则打开文件,从开头开始写入,即原有内容会被删除。如果文件不存在,创建新文件 |
mode=w+ | 打开一个文件用于读写。如果文件已存在则打开文件,从开头开始编辑,原有内容会被删除。如果文件不存在,创建新文件 |
– | – |
mode=a | 追加。如果文件已存在,文件指针会放在文件的结尾。新内容将会被写入到已有内容之后。如果文件不存在,创建新文件写入 |
mode=a+ | 用于读写。如果文件已存在,文件指针会放在文件的结尾。文件 |