python open语句,python内置函数open()的参数用来指定打开文本文件

  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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: