文件的打开与关闭
一般我们在电脑上操作一个文件的时候,通常是先创建一个文件,然后打开文件,然后是读取数据或是写入数据,最后关闭文件。
在python中也是一样:
- 创建一个文件
- 打开文件
- 读取或写入数据
- 关闭文件
打开文件
python中使用open函数打开一个已经存在的文件,或者创建一个新的文件,语法如下:
open(文件名,访问模式,[编码]),返回值为文件对象,文件对象包含如下属性:
closed:判断文件是否关闭,关闭返回True否则返回False
mode:被打开文件的访问模式
name:返回文件名称
示例代码
f = open('test.txt','r')
访问模式说明
访问模式 | 说明 |
r | 以只读的方式打开已有文件,文件的指针将会放在文件的开头。默认模式 |
w | 打开一个文件只用于写入数据,如果该文件已经存在则将其覆盖,否则创建一个新文件 |
a | 打开一个文件用于追加写入数据,如果该文件已经存在,文件的指针将会放在文件的结尾,新的内容将会被写到已有内容的后面,如果文件不存在,则创建一个新文件然后写入数据 |
rb | 以二进制的格式打开一个已有文件用于只读,此模式不能指定编码方式,文件将指针放在文件的开始 |
wb | 以二进制格式打开一个文件只用于写入,如果文件已经存在则打开文件,并从文件头开始编辑,原有内容会被覆盖,如果文件不存在则创建新的文件。一般用于非文本如图片等 |
ab | 以二进制格式打开一个文件用于追加,如果文件已经存在,文件指针将会放在文件结尾,新的内容将会被追加到已有内容之后。如果文件不存在则创建新文件并写入。 |
r+ | 打开一个已有文件用于读写,文件指针将会放在文件开头。 |
w+ | 打开一个文件用于读写,如果文件存在则打开文件从头开始编辑,覆盖原有内容,如果不存在则创建新文件。 |
a+ | 打开一个文件用于读写,如果文件已经存在,文件的指针将指向文件的结尾,新内容将会追加到原有内容之后,如果文件不存在则创建新文件。 |
rb+ | 以二进制格式打开一个已有文件用于读写,文件指针指向文件开头,一般用于非文本文件如图片等 |
wb+ | 以二进制格式打开一个文件用于读写,如果文件已经存在则打开文件从头开始编辑,原有内容将被覆盖,如果文件不存在,创建新文件。 |
ab+ | 以二进制格式打开一个文件用于追加,如果文件存在指针执行文件结尾,新内容追加到原有内容之后,文件不存在则创建文件。 |
总结:一般情况下,只要模式是带r的,这种情况打开一个文件时,这个文件必须是已经存在的,否则将会报错。
文件的关闭
使用文件对象的close()方法对文件进行关闭。当文件操作完以后一定要记得关闭文件。文件关闭后将不能再进行人格读写操作。及时关闭文件是一个很好的习惯。
f = open('test.txt')
f.close()
使用with关键字打开文件
python中还有一种打开文件的方式:借助with关键字和open函数,语法如下:
with open(文件名,访问模式,[编码]) as 文件对象,对文件的所有操作全部放在with下(这里要注意缩进)
这种写法的好处就是,文件操作完以后不需要人工手动去关闭,with结束后会自动关闭。
示例代码:
with open('test.txt','r') as f:
f.readlines()
以上便是文件的打开与关闭操作