python读文件和写文件,python对文件进行读写操作

  python读文件和写文件,python对文件进行读写操作

  一、文件打开方式

  打开指针位置读取的文件类型r只读(默认模式)指针在文件的开头,如果文件不存在,会报错。1.默认的读取文件都是ASCII编码的文本文件。

  2.如果读取的文件是二进制文件,比如图片,视频需要使用‘Rb’模式。

  3.要读取非ASCII编码的文本文件,必须以二进制模式打开它们,然后对它们进行解码。

  f=打开( E:/test.txt , rb )

  F.阅读()。decode( gbk )Rb二进制格式只读指针在文件的开头。如果文件不存在,将会报告一个错误。r读写指针在文件的开头。如果文件不存在,将会报告一个错误。如果文件存在,只写,然后覆盖。如果不存在,将创建wb二进制格式。如果文件存在,它将被覆盖。如果不存在,会创建一个W可读可写的文件;如果存在,会被覆盖;如果不存在,创建wb二进制格式的可读写文件;如果存在,覆盖它;如果它不存在,创建一个追加文件存在,指针被追加到文件的末尾;如果不存在,则ab二进制格式追加文件存在,指针追加在文件末尾;如果不存在,则存在一个可读可写的文件,指针追加在文件末尾;如果不存在,则存在ab _ binary格式的可读可写文件,指针追加在文件末尾;如果不存在,创建第二个文件打开方法。

  比如文件不存在,需要调用close()方法吗?注意python内置的open函数f=open(E:/test.txt , r )。如果文件不存在,必须写入IOError来调用close()。1.文件对象会占用操作系统的资源,操作系统能同时打开的文件数量是有限的。

  2.写文件的时候,操作系统不会马上把数据写到磁盘,而是把内容缓存起来,空闲的时候再写。只有调用close()方法时,操作数据才会将未写入的数据写入磁盘。如果不写close()方法,可能只会把一部分数据写到磁盘上,剩下的数据都会丢失。

  3.文件不存在,可以通过尝试…最后避免,但是比用语句with open(E:/test.txt , r )更麻烦由于f文件不存在,那么IOErrorwith语句会自动调用close()方法3。读写文件并找到它。

  用法:注意读f.read(size)。如果没有大小,即f.read()一次性读取文件的所有内容,返回类型str;如果有大小,也就是f.read(50)读取的字节内容最多。1.文件很小,可以一次读取。如果文件很大,就会超出内存大小,内容就会爆炸。

  2.如果文件太大,可以使用f.read (size),其中x是每次最多大小字节的内容。

  3.如果是配置文件,调用f.readline()一次读取一行最方便。返回类型strf.readlines()来一次读取所有内容并逐行返回列表。Write f.write()将字符串写入文件。如果写完了,需要在字符串后面加 \n 定位f.seek(offset,From _ what)f . seek(2,0)的读取位置后移2个字符。from _ what的值是文件的起始位置,可以省略;偏移当前位置f.tell()f.tell(),返回当前文件位置。4.读取非ASCII文件,如utf-8,gbk类型

  1:读取时指定编码类型=utf-8 。

  用open(E:/test1.txt , r ,encoding=utf-8 )作为f

  打印(f.read())

  结果:

  你好

  方法二:

  必须:1。以二进制模式打开,然后解码。

  编解码器模块:读取文件时自动转换代码,直接读取unicode。

  导入编解码器

  用codecs.open(E:/test.txt , rb , utf-8 )作为f:

  阅读()

  注意:有些代码没有标准化,可能会遇到UnicodeDecodeError错误。文件中可能有一些非法编码的字符。在这种情况下,可以使用open()函数接收errors参数,该参数指示如何处理编码错误。最简单的方法就是直接忽略f=open (e:/test1.txt , r ,encoding= gbk ,errors=

  五.文件对象的属性

  F.closed文件关闭,返回true否则返回falsef.mode,返回打开文件的访问方式;f.name,它返回文件名。

  学习和参考链接:

  https://www.liaoxuefeng.com廖雪峰官方网站

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

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