python基础学习之文件读写

638 阅读3分钟

文件的作用

就是把一些存储存放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力

file

文件的基础操作

打开文件

Python内置了一个open()方法,用于对文件进行读写操作。使用open()方法操作文件就像把大象塞进冰箱一样,可以分三步走,一是打开文件,二是操作文件,三是关闭文件。

open()方法的返回值是一个file对象,可以将它赋值给一个变量(文件句柄)。其基本语法格式为:

file

filename 文件名称

mode 打开模式

打开模式常用的有 r(读模式,文件必须存在) w(写模式),当然还有一些其他方式

file

文件的关闭

file

编码问题

要读取非UTF-8编码的文件,需要给open()函数传入encoding参数,例如,读取GBK编码的文件:

file

遇到有些编码不规范的文件,可能会抛出UnicodeDecodeError异常,这表示在文件中可能夹杂了一些非法编码的字符。遇到这种情况,可以提供errors参数,表示如果遇到编码错误后如何处理。

file

文件对象操作

每当我们用open方法打开一个文件时,将返回一个文件对象。这个对象内置了很多操作方法。下面假设,已经打开了一个f文件对象。

f.read(size)

读取一定大小的数据, 然后作为字符串或字节对象返回。size是一个可选的数字类型的参数,用于指定读取的数据量。当size被忽略了或者为负值,那么该文件的所有内容都将被读取并且返回。

file

f.readline()

从文件中读取一行n内容。换行符为'n'。如果返回一个空字符串,说明已经已经读取到最后一行。这种方法,通常是读一行,处理一行,并且不能回头,只能前进,读过的行不能再读了。

file

f.write()

将字符串或bytes类型的数据写入文件内。write()动作可以多次重复进行,其实都是在内存中的操作,并不会立刻写回硬盘,直到执行close()方法后,才会将所有的写入操作反映到硬盘上

file

读取大文件的处理方式

比如一个文件很大,比如5G,怎么把文件的数据读取到内存然后进行处理呢?

file

文件的定位读写- f.seek()

file

f.tell()

返回文件读写指针当前所处的位置,它是从文件开头开始算起的字节数。一定要注意了,是字节数,不是字符数。

f.close()

关闭文件对象。当处理完一个文件后,调用f.close()来关闭文件并释放系统的资源。文件关闭后,如果尝试再次调用该文件对象,则会抛出异常。

with关键字

with关键字用于Python的上下文管理器机制。为了防止诸如open这一类文件打开方法在操作过程出现异常或错误,或者最后忘了执行close方法,文件非正常关闭等可能导致文件泄露、破坏的问题 。Python提供了with这个上下文管理器机制,保证文件会被正常关闭。在它的管理下,不需要再写close语句。注意缩进。

file

文件的相关操作

file

案例:

制作文件的备份

file

案例:

批量重命名文件名称

file

点击了解更多获取PythonWeb开发,数据分析,爬虫等学习知识,了解更多