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 に答える