6-7 Python正确关闭文件
本节编程练习不计算学习进度,请电脑登录imooc.com操作

Python正确关闭文件

在进行文件操作的时候,正确关闭一个文件非常重要,如果在文件读写后,没有正确关闭一个文件的话,则有可能导致文件损坏,文件内容丢失等问题。

在一般情况下,我们使用文件对象的close()方法,来关闭一个文件。
但是,使用close()方法,也不是100%安全的,如果在close()文件之前,程序异常退出了,那么文件也得不到正确的关闭。比如:

f = open('test.txt', 'a+')
exit(-1) # ==> 模拟程序异常退出
f.close() # ==> close语句永远的不到执行

在实际工程中,close()文件之前,为了正确关闭文件,需要考虑各种异常情况,这是非常麻烦的一件事,Python提供with关键字,可以免除这类后顾之忧。
with关键字对资源进行访问的场合,会确保不管在使用过程中是否发生异常,都会执行必要的“清理”的操作,释放资源,比如文件使用后自动关闭等等。
with的使用方法如下:

with open('test.txt', 'r') as f:
    content = f.readlines()
    for line in content:
        print(line)

当文件使用结束后,不需要显式的调用f.close()关闭文件。

任务

假设test.txt文件有以下内容:

Hello World
Hello Python
Hello Imooc

请使用with语法,将文件的内容重复写一份追加到文件的尾部。

  1. # Enter a code
下一节