在进行文件操作的时候,正确关闭一个文件非常重要,如果在文件读写后,没有正确关闭一个文件的话,则有可能导致文件损坏,文件内容丢失等问题。
在一般情况下,我们使用文件对象的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语法,将文件的内容重复写一份追加到文件的尾部。
请同学在本地编写代码练习
参考答案:
with open('test.txt', 'a+') as f: f.seek(0) content = f.readlines() f.seek(2) for line in content: f.write(line)
请验证,完成请求
由于请求次数过多,请先验证,完成再次请求
打开微信扫码自动绑定
绑定后可得到
使用 Ctrl+D 可将课程添加到书签
举报