更多课程 选择中心

Python培训
美国上市教育机构

400-111-8989

Python培训

零基础python教程-用python读写文件

  • 发布:Python培训
  • 来源:谭某人
  • 时间:2019-05-15 10:56

python 对文件的读写在程序开发中也是非常常见的操作,比如写入一些简单的系统日志、把爬虫采集的数据写入到本地文件等等,今天我们就详细说下怎么用 python去读写一个文件。

1、python 写入文件

零基础Python教程

open('xxx.txt','w'),'w' 表示以写的模式打开文件,在写之前要先找到这个文件,如果文件不存在, python 则会先自动创建该文件,然后再写入内容。

注意程序写入的内容并不一定立刻就写入硬盘了,往往是先写入到内存中,然后再根据的系统的空闲时间慢慢从内存写入硬盘中,等到调用 close 方法的时候才会确认把内存中剩下的数据写入到硬盘。

所以一旦我们忘记主动调用 close 来关闭文件的话,或者在程序写入文件的时候出现异常终止程序从而不会再继续往下执行 close 方法,就可能导致部分数据丢失,为了避免这种情况,我们推荐使用 with 这种方式来打开文件,使用 with 即不管是程序在完成对文件写入操作之后还是程序写入文件异常终止都会自动调用 close 方法来关闭文件

零基础python教程

如果重复对一个文件写入内容,会不会对已经存在的内容有影响呢,答案是会的。

python 的文件写模式分覆盖写和追加写。刚刚上面提到的 'w' 模式就是覆盖写,即每次以 'w' 模式打开文件都会先直接清空该文件,注意是只要一打开就会先清空即使你不写入任何内容。还有一种就是使用 'a' 追加模式,这种模式不会清空文件中原有的内容,只会在原有内容后面继续追加新的内容。

2、python 读文件

零基础Python教程

读文件和写文件类似,只不过是以读的模式打开文件,open('xxx.txt','r'),'r' 表示以只读模式打开文件,读模式打开文件需要确认文件已经存在,如果文件不存在程序会报找不到文件的错误。

如果文件打开成功,接下来会调用 read 方法来一次性把文件的所有内容读到内存当中,最后再需要调用 close 来关闭文件。文件的读写操作完成之后都需要关闭文件,不然一直打开的文件会占用系统资源。

同样的,由于文件的读写过程中可能会出现异常,导致不能执行后面的 close 方法来关闭文件,所以跟上面提到的文件的写入一样,我们也推荐使用 with 来打开文件,总之,对于文件的读写操作,都推荐使用 with 方式来打开。

零基础Python教程

如果一个文件很大,有几十个 G ,那么把所有的内容一次性读到内存中肯定不现实,这时候我们可以循环读文件,每次只读指定大小的内容,read(size) 表示只读取 size 字节的数据。

零基础python教程

也有的文件内容是按行写入的,比如常见的 config 配置文件,我们还可以使用 readline() 可以按行来读取内容,也可以把文件所有内容先按行读取最后放到一个数组 list 中返回。

零基础python教程

实际上不同的文件会有不同的编码格式,上面我们讲的都是基于 utf-8 编码格式的文件,如果要打开非 utf-8 的文件,还需要使用 open('xxx.txt','r',encoding='gbk') 这种方式来指定文件的编码。

3、二进制文件读写

我们上面讲的都是默认的文本文件,还有常见的图片、音视频等二进制文件怎么用 python 读写呢,其实只需要使用 'rb' 和 'wb' 这两种模式就可以对二进制文件进行读写了。

零基础Python教程

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:零基础python教程—python数组
下一篇:零基础python教程-python的变量和字符串

零基础Python教程-多进程

Python中字典合并的实现方法

python中的logging日志模块

零基础Python教程-多线程

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省