-2

このファイルを閉じる方法。何か案が?

 with open('output.txt','w', encoding='UTF-8') as output:
       output.writelines(str(i)+'\n' for i in range(5))
4

3 に答える 3

7

with「 -block 」を離れるか、例外が発生すると、ファイルは自動的に閉じられます。これが、ファイルを開くための推奨される方法である理由です。

ステートメントの詳細については、このPEP 343 -- The "with" Statementを参照してwithください。例による Python の「with」ステートメントは、より多くの情報を提供します。

アップデート:

で開いたファイルを削除できないwithのは、ファイルが以前に開いたままになっているためです (使用withせず、明示的にcloseing しない場合)。別のファイルを使用したテストとして、with問題は発生しませんでした。

于 2012-06-19T15:24:46.257 に答える
3

http://effbot.org/zone/python-with-statement.htm

言い換えると:

Python 2.5では、ファイルオブジェクトにenterメソッドとexitメソッドが装備されています。前者は単にファイルオブジェクト自体を返し、後者はファイルを閉じます。

したがって、withステートメントの「ティアダウン」アクションは、実際にファイルを自動的に閉じることです。

于 2012-06-19T15:25:59.280 に答える
2

withステートメントは自動的にファイルを閉じます。

詳細はこちら: http://preshing.com/20110920/the-python-with-statement-by-example

于 2012-06-19T15:25:02.610 に答える