python 文件基本操作

python对文件的操作步骤基本分为:

打开文件open()→操作文件(读read() / 写write())→关闭文件close()。

文件读取:
这里case.txt文件在当前目录下,所以在不写绝对路径的情况下可以直接打开。python 文件基本操作
需要注意的是每次打开文件后一定要记得close(),因为文件对象会占用操作系统的资源,并且操作系统同一时间能打开的文件数量也是有限的,但是需要每次都去调用close()函数,有点繁琐。
可以使用with open() as 方法,会自动关闭文件。
python 文件基本操作

下图可以看到open()函数,默认参数mode=‘r’,所以在打开文件的时候不传mode参数,默认是:r 以只读的方式打开
python 文件基本操作
文件不存在会报错:
python 文件基本操作
readline():
如果文件内容有多行,但我只想读取第一行数据可以用readline(),其读取结果是字符串:
python 文件基本操作

python 文件基本操作

readlines():
一下读取所有行,读取结果作为一个字符串列表返回。
python 文件基本操作
如果在只读的模式下写入的话肯定会报错:文件不可写
python 文件基本操作
所以如果想文件写入,需要选择文件的打开模式mode=‘w’;w只写模式打开文件
python 文件基本操作
写入后查看文件内容时显示乱码,因为在写入的时候编码格式不正确,默认ASCII编码,中文会显示乱码。
python 文件基本操作
所以需要指定编码格式utf-8
python 文件基本操作
python 文件基本操作
w模式如果文件不存在就会新建一个文件,如果文件存在就会覆盖原文件。
这里case_01.txt内容如上,如果在w模式下我还想写入其他内容,那么就会覆盖掉原内容。
python 文件基本操作
python 文件基本操作
如果想在原文件内容基础上继续写入内容,可以用mode=‘a’模式;
a只追加写的模式。
文件不存在就会新建,文件存在会在文件的末尾追加写入内容。
python 文件基本操作
python 文件基本操作
对于非文本文件,使用’b’模式,以字节的方式进行操作,但是必须与r,w,a组合使用;
rb:以字节的方式进行读取
wb:以字节的方式进行写入
ab:以字节的方式进行追加写入
如下打开一张图片要用rb模式。写入同样以字节方式。
python 文件基本操作

如果想同时又读又写可以使用"+"
r+:读+追加模式,可读可写,与‘r’相同之处在于也是必须打开一个已有的文件,不同的是它可写可读,而且写与读不分先后,即随时都可进行读与写。
python 文件基本操作
如果先写在读的话光标会移动到末尾,将读不到数据的
python 文件基本操作
w+:写读模式,打开创建新文件,因此需要先把内容写进去在读。即保证文件有内容,可以通过seek()方法移动光标位置来读自己想要的部分。
python 文件基本操作
a+:追加读写模式
追加读写模式,打开文件方式同‘a’一样,写方式也和’a’一样,但是可以读。且是任意时刻读写。需要注意的是你若刚用‘a+’打开一个文件,则不能立即读,因为此时光标已经是文件末尾
python 文件基本操作

文件读写模式列表:
python 文件基本操作