Python with open 使用技巧

  在使用Python处理文件的是,对于文件的处理,都会经过三个步骤:打开文件->操作文件->关闭文件。但在有些时候,我们会忘记把文件关闭,这就无法释放文件的打开句柄。这可能觉得有些麻烦,每次打开文件之后都要记得关闭,但我们按照以下方式,就可以避免忘记关闭文件操作的问题。

try:
    f = open('stanley_liu.log', 'w')  #'w'模式打开,写文件
    print f.read()
finally:  #操作文件后执行此代码块
    if f:
        f.close()

  以上的这种方法确实能够避免忘记关闭文件的问题,但是每次都很繁琐,为了简化这一操作,就可使用with open来实现。这和前面的try ... finally是一样的,但是代码更佳简洁,并且不必调用f.close()方法。

with open('stanley_liu.log','w') as t:
    t.write('This is a test line')    #和for、if一样,这里的代码保持缩进

  这种写法给人的感觉Python味十足,也更符合Pythonic的风格。对于with关键字,它可以在打开某些东西后,不管里面做了什么,with代码块结束之后,就可以调用这个对象的close函数,能够有效的避免忘记关闭文件的操作。

原文地址:https://www.cnblogs.com/stefan-liu/p/5173227.html