栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python open() 函数 参数 文件读写参数

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python open() 函数 参数 文件读写参数

open函数的参数

读写文件,要通过内置函数open()打开文件,获得文件对象。

函数open的参数如下:

open(
    file, 
    mode='r', 
    buffering=-1, 
    encoding=None, 
    errors=None, 
    newline=None, 
    closefd=True, 
    opener=None
    ) 
参数file

file参数指定了要打开文件的路径。

可以是相对路径,比如 'text.txt', 就是指当前工作目录下面的log.txt 文件 也可以是绝对路径,比如 'd:projecttext.txt'。

参数mode

mode指定了文件打开的模式:

默认为't'模式

参数 encoding

encoding 参数指定了读写文本文件时,使用的 字符编解码 方式。

可以使用的参数值如下

utf-8:UTF-8是一种针对Unicode的可变长度字符编码,也是一种前缀码。ASCII

utf-8-sig: utf-8-sig 需要提供BOM,即带有签名的 utf-8(UTF-8 with BOM)。

ASCII:ASCII 美国信息交换标准代码是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。

gb2312:由中国国家标准总局1980年发布,1981年5月1日开始使用。GB2312编码共收录汉字6763个,其中一级汉字3755个,二级汉字3008个。

gbk:是在GB2312-80标准基础上的内码扩展规范,使用了双字节编码方案,其编码范围从8140至FEFE(剔除xx7F),共23940个码位,共收录了21003个汉字,完全兼容GB2312-80标准。

buffering参数

用于设置缓冲策略:

buffering为-1时,使用默认大小的缓冲区。

buffering为0时,关闭缓冲区,直接读写,仅在二进制模式下有效。

buffering为1时,表示在文本模式下使用行缓冲区方式。即见到换行符就刷新存盘。

buffering为大于1时,表示缓冲区用于指定缓冲区的大小。

errors参数

是用来指定编码和解码错误时处理方法。

errors='strict',编码出错则抛出异常ValueError。同等于默认errors=None;

errors='ignore',忽略错误。

errors='replace',替代模式,比如使用“?’来替换出错的地方。

newline参数

控制换行。

参数可以用None, '', 'n', 'r', 'rn'

用默认的参数即可。

用程序输入文本时想换行必须用'n', 'r', 'rn’,直接回车无效。

读取非程序输入的文本时,输入'n', 'r', 'rn’就是个字符串。没有换行的作用。但你回车换行的符号它能读取到。

参数closefd

关闭文件描述符

True表示关闭。

默认True,必须为True,否则报错。
 

​参数opener

通过传递可调用对象opener可以使用自定义开启器。

然后通过调用opener(文件,标志)获取文件对象的基础文件描述器。

opener必须返回一个打开的文件描述器(传递os.open为opener 结果类似的功能 None)。 ​

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/997746.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号