python open语句,python内置函数open()的参数用来指定打开文本文件
第一条。背景2。文件读写2.1打开文件2.2文件模式2.3文件缓冲区2.4文件读取2.5文件写入
1.背景IO是指计算机中的输入/输出,即输入输出。在使用数据交换的地方,会涉及到IO编程,比如磁盘和网络数据传输。流是IO编程中的一个重要概念,分为输入流和输出流。我们可以把流动理解为水管,数据相当于水管里的水,但只能单向流动。所以在数据传输的过程中,我们需要设置两条水管,一条输入,一条输出,这样读写才能同步。
2.文件读写
2.1打开文件读写之前,需要打开文件确定文件的读写模式。open函数用于打开一个文件。语法如下:
公开的(名称。模式。buffering]]) open函数将文件名作为唯一的强制参数,然后返回一个file对象。模式和缓冲参数是可选的。默认模式是读取模式,默认缓冲区是无。
假设有一个名为qiye.txt的文本文件,它的存储路径是C: \ text(或者Linux下的~/text),那么你可以如下打开文件。在交互环境中的提示" "下,输入以下内容:
F=open(rc:\text\qiye.txt )如果文件不存在,将会看到类似如下的异常回溯:
Traceback(最近一次调用last):文件“”,第1行,在IOError: [Errno 2]没有这样的文件或目录:“C:\\qiye.txt”
2.2文件模式下面主要讲open函数中的mode参数(如表1-1所示)。通过改变模式参数,可以实现对文件的不同操作。
这里提醒一下“b”参数的用法。通常,在处理文本文件时,不使用 b 参数。但是在处理一些其他类型的文件(二进制文件)时,比如mp3音乐或者图片,那么就要在mode参数中加上 b ,这是爬虫中常用来处理媒体文件的。参数“rb”可用于读取二进制文件。
示例:
Encoding=utf-8 支持中文读写格式。
f=打开( test1.txt , wt ,编码=utf-8 )
F.write(“你好,世界,周杰伦”)
f.close()
f=打开( test1.txt , rt ,编码=utf-8 )
s=f.read()
印刷品
2.3文件缓冲区打开函数中的第三个可选参数缓冲控制文件的缓冲。如果参数为0,则I/O操作无缓冲,数据直接写入硬盘;如果该参数为1,则I/O操作被缓冲,数据首先被写入存储器。只有使用刷新功能或关闭功能,数据才会更新到硬盘;如果该参数是一个大于1的数字,则表示缓冲区的大小(以字节为单位),-1(或任何负数)表示使用默认的缓冲区大小。
F=open ("demo.txt ", w ,buffering=1) #先缓存到内存
F=open ("demo.txt "," w ",buffering=0) #直接写入磁盘
2.4文件读取文件读取主要分为字节读取和行读取。常用的方法有read()、readlines()和close()。
1优雅
尝试:
f=打开(rc:\text\qiye.txt , r )
print f.read()
最后:
如果f:
F.close()优雅2
使用open(rc:\text\qiye.txt , r )作为文件读取器:
PrintReader.read()调用read()将文件内容读入内存一次,但如果文件太大,内存就会不足。一般对于大文件,可以反复调用read(size)方法,一次最多读取size字节。如果文件是文本文件,Python提供了更合理的方法。调用readline()可以一次读取一行,调用readlines()可以一次读取所有内容并逐行返回列表。可以根据自己的具体需求采取不同的阅读方式。简而言之:
小文件可以通过read()方法直接读入内存,大文件通过连续调用read(size)更安全。对于配置文件等文本文件,readline()方法更合理。使用open(rc:\text\qiye.txt , r )作为文件读取器:
对于fileReader.readlines()中的行:
print line.strip()
2.5文件写入文件和读取文件是一样的,唯一的区别是调用open方法时,传入的是ID。
符号“W”或“WB”表示写入文本文件或写入二进制文件。例子如下:
f=打开(rc:\text\qiye.txt , w )
f.write(《叶琪》)
F.close()我们可以反复调用write()方法写入文件,最后必须使用close()方法关闭文件。使用write()方法时,操作系统并不立即将数据写入文件,而是先写入内存并缓存,然后在空闲时写入文件,最后使用close()方法将数据完全写入文件。当然,也可以使用f.flush()方法保持数据立即写入文件,最后使用close()方法关闭文件。与读取文件的方式相同,文件操作中也可能出现IO异常,因此建议使用with语句:
使用open(rc:\text\qiye.txt , w )作为文件编写器:
FileWriter.write(叶琪)参考:
《Python爬虫开发与项目实战》
来自
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。