位置: 编程技术 - 正文

探究python中open函数的使用(python中的open)

编辑:rootadmin

推荐整理分享探究python中open函数的使用(python中的open),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python的openpyxl,pythonwith open,python中open用法,pythonwith open,pythonwith open,python openfoam,在python中open,在python中open,内容如对您有帮助,希望把文章链接给更多的朋友!

最近,开始学习python的开发,遇到了一点文件操作的问题,探究一下open函数的使用。

一、open()的函数原型open(file, mode=‘r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True)从官方文档中我们可以看到open函数有很多的参数,我们常用的是file,mode和encoding,对于其它的几个参数,平时不常用,也简单介绍一下。buffering的可取值有0,1, >1三个,0代表buffer关闭(只适用于二进制模式),1代表line buffer(只适用于文本模式),>1表示初始化的buffer大小;encoding表示的是返回的数据采用何种编码,一般采用utf8或者gbk;errors的取值一般有strict,ignore,当取strict的时候,字符编码出现问题的时候,会报错,当取ignore的时候,编码出现问题,程序会忽略而过,继续执行下面的程序。newline可以取的值有None, n, r, '', ‘rn' ,用于区分换行符,但是这个参数只对文本模式有效;closefd的取值,是与传入的文件参数有关,默认情况下为True,传入的file参数为文件的文件名,取值为False的时候,file只能是文件描述符,什么是文件描述符,就是一个非负整数,在Unix内核的系统中,打开一个文件,便会返回一个文件描述符。二、file() 与open()两者都能够打开文件,对文件进行操作,也具有相似的用法和参数,但是,在我看来,这两种文件打开方式有本质的区别,file为文件类,用file()来打开文件,相当于这是在构造文件类,而用open()打开文件,是用python的内建函数来操作。三、参数Mode的基本取值

r、w、a为打开文件的基本模式,对应着只读、只写、追加模式;b、t、+、U这四个字符,与以上的文件打开模式组合使用,二进制模式,文本模式,读写模式、通用换行符,根据实际情况组合使用、

探究python中open函数的使用(python中的open)

四、 常见的mode取值组合1、r或rt 默认模式,文本模式读2、rb 二进制文件3、w或wt 文本模式写,打开前文件存储被清空4、wb 二进制写,文件存储同样被清空 5、a 追加模式,只能写在文件末尾6、a+ 可读写模式,写只能写在文件末尾 7、w+ 可读写,与a+的区别是要清空文件内容8、r+ 可读写,与a+的区别是可以写到文件任何位置

五、几个模式的区别为了测试不同模式的区别,我们用一小段代码来测试写入文件中的直观不同。

(1)a+与w+模式的区别

(2)a+与r+模式

在写入文件前,我们在上面那段代码中加上一句 seek(6),用来定位写入文件写入位置。

注意:r+模式打开文件时,此文件必须存在,否则就会报错,‘r'模式也如此六、换行符带来的烦恼当你用二进制模式将带有换行符的字符串写入txt文件时,数据存储是正确的,但是当用windows平台的记事本程序打开时,你看到的换行符确实一个个的小黑块,但是,用文本模式,就不存在这样的问题。在这里,涉及到了不同平台由于编码的问题,而对换行符有不同的识别。unix或者linux系统识别n为换行符的标识,但是windows平台的编码,对n不予理睬。但是python自身带有转化功能,用文本模式的时候,你不会看到由于平台不同而造成的换行效果不同,但是,二进制模式的时候,python便不会再去转化,是什么,就写进去什么,此时的换行符,再用文本模式打开,windows下就不识别‘n'换行符了。

标签: python中的open

本文链接地址:https://www.jiuchutong.com/biancheng/383361.html 转载请保留说明!

上一篇:Saltstack快速入门简单汇总(saltstack安装)

下一篇:详解设计模式中的工厂方法模式在Python程序中的运用(设计模式含义)

  • 视同销售收入是纳税调整项目吗?
  • 消费税入哪个科目
  • 加计扣除产生的滞纳金
  • 建筑业挂靠企业所得税如何收取
  • 增值税专用发票可以开电子发票吗
  • 为职工代垫的水电费应计入
  • 税收滞纳金计入营业外支出的哪一项
  • 企业所得税季报和年报的区别
  • 一般纳税企业可以变更小微企业吗
  • 预付费卡税务处理
  • 企业变更地址需要哪些资料
  • 何为独立核算
  • 投资支付的现金增加说明什么
  • 自行开发的软件如何确认为无形资产
  • 没有申报增值税不能领发票吗
  • 出租的固定资产计提折旧
  • 公路工程营改增
  • 公司是否可以开电子发票
  • 增值税普通发票需要交税吗
  • 教育费附加计算公式
  • 餐饮消费,碰到商家不愿意开发票怎么办?
  • 年中入职个税怎么预扣
  • 分支机构分配表 资产总额无法区分怎么办
  • 12月的发票可以1月付款吗
  • 子公司之间固定资产划转 增值税会计处理
  • 自然人股权转让要交什么税
  • 安装额外语言
  • 项目款申请
  • 在win7系统中,添加打印机驱动程序
  • php访问统计
  • php变量底层实现
  • php多表联合查询
  • 0x00000024蓝屏怎样解决
  • ixapplet.exe - ixapplet是什么进程 有何作用
  • php中的require
  • 不动产增值税总结
  • 公司搞活动买的车能买吗
  • win10蓝牙驱动怎么安装程序
  • 行政事业单位资产负债表
  • thinkphp框架入门
  • 资产负债表和利润表的利润不一致
  • 微信小程序的视频怎么下载
  • 前端基础入门
  • update-initramfs -u命令
  • 利息收入做账
  • access中宏的操作
  • 水灾期间未生产怎么处理
  • 经营成本包括五项内容
  • 实际发的工资跟个人所得税不一样怎么办
  • 存货 跌价
  • 科目汇总表借方和贷方相等吗
  • 建筑企业收挂靠公司的管理费如何做账?
  • 会计科目中的财务费用
  • 小规模出口免税是什么意思
  • 如何理解预付年金终值期数和系数和记忆方法
  • 律师的行业
  • SQLServer Top语句参数化方法
  • window怎么操作
  • windowsxp电脑开机
  • win8系统怎么把字体调大
  • win8连接wifi界面消失
  • MAC修改Dock烟雾效果及设置抓屏快捷键的方法
  • win7窗口大小怎么设置
  • 安装yum的命令
  • 2020win7免费升级win10教程
  • linux创建vg
  • nodejs怎么在服务器运行
  • 我的第一个师父读后感
  • node.js net模块
  • Node.js中的核心模块包括哪些内容?
  • nodejs xhr
  • Div CSS absolute与relative的区别小结
  • 一起学ap
  • jquery使用css
  • js如何修改style
  • 置顶语句子
  • html伸缩布局
  • python 自定义类模块
  • 江西税务局官网登录
  • 加强税务工作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设