一、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, '', ‘\r\n' ,用于区分换行符,但是这个参数只对文本模式有效;

closefd的取值,是与传入的文件参数有关,默认情况下为True,传入的file参数为文件的文件名,取值为False的时候,file只能是文件描述符,什么是文件描述符,就是一个非负整数,在Unix内核的系统中,打开一个文件,便会返回一个文件描述符。

二、file() 与open()

两者都能够打开文件,对文件进行操作,也具有相似的用法和参数,但是,在我看来,这两种文件打开方式有本质的区别,file为文件类,用file()来打开文件,相当于这是在构造文件类,而用open()打开文件,是用python的内建函数来操作。

三、参数Mode的基本取值

r、w、a为打开文件的基本模式,对应着只读、只写、追加模式;

b、t、+、U这四个字符,与以上的文件打开模式组合使用,二进制模式,文本模式,读写模式、通用换行符,根据实际情况组合使用、

四、 常见的mode取值组合

1、r或rt 默认模式,文本模式读

2、rb 二进制文件

3、w或wt 文本模式写,打开前文件存储被清空

4、wb 二进制写,文件存储同样被清空

5、a 追加模式,只能写在文件末尾

6、a+ 可读写模式,写只能写在文件末尾

7、w+ 可读写,与a+的区别是要清空文件内容

8、r+ 可读写,与a+的区别是可以写到文件任何位置

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

1

2

3

4

5

6

7

test= ["test1\n","test2\n","test3\n" ]

f= open("b.txt","a+")

try:

for sin test:

f.write( s )

finally:

f.close()

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

(2)a+与r+模式

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

注意:r+模式打开文件时,此文件必须存在,否则就会报错,‘r'模式也如此

六、换行符带来的烦恼当你用二进制模式将带有换行符的字符串写入txt文件时,数据存储是正确的,但是当用windows平台的记事本程序打开时,你看到的换行符确实一个个的小黑块,但是,用文本模式,就不存在这样的问题。

在这里,涉及到了不同平台由于编码的问题,而对换行符有不同的识别。unix或者linux系统识别\n为换行符的标识,但是windows平台的编码,对\n不予理睬。

但是python自身带有转化功能,用文本模式的时候,你不会看到由于平台不同而造成的换行效果不同,但是,二进制模式的时候,python便不会再去转化,是什么,就写进去什么,此时的换行符,再用文本模式打开,windows下就不识别‘\n'换行符了。

python open函数参数_python中open函数的使用相关推荐

  1. python中函数包括参数函数吗_Python中的函数---函数的定义和参数

    本文是廖雪峰教程的笔记. 函数的定义 定义函数时,需要确定函数名和参数个数 def fun(x1,x2,x3):: 如果有必要,可以先对参数的数据类型做检查: 函数体内部可以用return随时返回函数 ...

  2. python中choice()函数的参数_Python中choice函数如何实现?

    熟悉Python的小伙伴是知道Python是可以生成随机项的,python中choice函数是random模块的随即取样函数,它可以通过导入 random 模块,调用 random 静态对象生成Pyt ...

  3. python中def函数字典_python中的函数def和函数的参数

    ''' 函数: 1.减少代码重用性 2.易维护 3.可扩展性强 4.类型function 定义函数: def 函数变量名(): 函数的调用: 1.函数名加括号 2.函数如果没被调用,不会去执行函数内部 ...

  4. python中def函数中的参数_python中的函数def和函数的参数

    ''' 函数: 1.减少代码重用性 2.易维护 3.可扩展性强 4.类型function 定义函数: def 函数变量名(): 函数的调用: 1.函数名加括号 2.函数如果没被调用,不会去执行函数内部 ...

  5. python中的open函数实例_Python中open函数注意点

    前段日子看了关于Python文件和流的一些文献,其中最基础的便是python的一个内建函数:open!!! 很简单的一个函数,他的原型是这样的: open(name,[,mode[,buffering ...

  6. python中max函数用法_Python中max函数用法实例分析

    Python中max函数用法实例分析 更新时间:2015年07月17日 15:45:09 作者:优雅先生 这篇文章主要介绍了Python中max函数用法,实例分析了Python中max函数的功能与使用 ...

  7. python display 报错_Python中的函数(三)

    Python中的函数(三) 在前面两篇文章中已经探讨了函数的一些相关用法,下面一起来了解一下函数参数类型的问题.在C语言中,调用函数时必须依照函数定义时的参数个数以及类型来传递参数,否则将会发生错误, ...

  8. python count函数代码_python中count函数简单用法

    python中count函数简单用法 python中count函数的用法 Python count()方法 描述 Python count() 方法用于统计字符串里某个字符出现的次数.可选参数为在字符 ...

  9. python strip函数用法_python中strip函数的用法

    python中往往使用剥除函数strip()来对用户的输入进行清理.strip函数的最一般形式为: str.strip('序列') 其中,序列是一段字符串,该函数表示从头或者从尾部开始进行扫描,如果扫 ...

最新文章

  1. 一起走进计算机视觉的世界
  2. Pytorch使用TensorboardX进行网络可视化
  3. OpenCV SURF FLANN匹配的实例(附完整代码)
  4. 保存对象报错with two open Sessions
  5. 转:J2SE5中的最新注释功能SuppressWarnings
  6. [css] 请你解释下什么是浮动和它的工作原理是什么?同时浮动会引起什么问题?
  7. oracle 添加字段
  8. 第一节:别出心裁的HTML5简介
  9. fastdfs java qps,关于vsftpd与fastDFS的问题?
  10. ssm游文化推广系统答辩PPT模板
  11. APP适配安卓手机刘海屏
  12. 基于鲸鱼优化深度混合核极限学习机的故障诊断方法
  13. 爱普生Epson L301 清零软件+图解教程
  14. 浅谈分形艺术是什么?
  15. windows系统笔记本连接外部显示器进行分屏
  16. 2017 Multi-University Training Contest - Team 10
  17. 提升深度学习模型泛化性的方法
  18. 如何判断linux是32位还是64位?
  19. 指纹识别综述(6): 现场指纹识别
  20. 层叠轮播图、小程序3D轮播图、小程序轮播图、折叠轮播图、叠式轮播图、微信小程序叠式轮播图实现、小程序层叠轮播图swiper、Taro层叠轮播图、Taro叠式轮播图

热门文章

  1. 分页(Limit+RowBounds)
  2. Linux部署Scrapyd及配置功能
  3. 求射线与平面的交点,向量点乘和叉乘
  4. html图片变色属性,用CSS新属性实现特殊的图片显示效果
  5. Windows桌面壁纸
  6. 深入学习Gremlin(22):遍历终止terminal
  7. 【树莓派不吃灰】命令篇⑨ 记录学习文件系统
  8. 软考高级信息系统项目管理(高项)原创论文——整体管理(2)
  9. 局域网ping不通,提示:无法访问目标主机
  10. CSH 入门基础 2 -- csh(C Shell)对文件/目录的判断及对参数的处理