Python I/O:目的与?

Jos*_*eph -1 python io

对于文件I/O的目的是什么:

with open
Run Code Online (Sandbox Code Playgroud)

我应该使用它而不是:

 f=open('file', 'w')
 f.write('foo)'
 f.close()
Run Code Online (Sandbox Code Playgroud)

Ash*_*ary 8

总是使用with statement.

来自docs:

在处理文件对象时,最好使用with关键字.这样做的好处是文件在套件完成后正确关闭,即使在途中引发了异常.它也比编写等效try-finally块短得多.

如果您没有显式关闭文件,那么文件对象可能会在内存中闲置,直到它被垃圾回收,这会隐式调用close()文件对象.因此,最好使用该with语句,因为即使发生错误,它也会显式关闭文件.

相关:文件对象在其引用计数达到零时自动关闭?