0

目前我正在使用此代码

if __name__=="__main__":
    try:
        main()
    except KeyboardInterrupt:
        f.close
        print "left!"

这是最好的方法吗?在脚本的早些时候,正在写入一个文件,我想确保在脚本终止时它完全关闭。请问有什么意见吗?

4

1 回答 1

6

请注意:f.close实际上并没有关闭文件,您必须调用该函数:f.close()

要回答您的问题,最好的方法是使用with块。即使引发异常,文件也会自动关闭:

with open('test.txt') as f:
    pass
# Automatically closes file on with block exit
于 2012-07-12T08:32:06.667 回答