ファイルがtest.txt
あり、その内容を印刷したいとします。私はPythonでこのようにそれを行うことができます(これは私の質問を説明するための単なる例であり、良いコードの例ではありません):
for i in (line for line in open('test.txt')):
print ">", i,
以前strace
は、コードの実行後にファイルが開いたり閉じたりすることを確認していました。
質問:ファイルが閉じられるのはなぜですか?コンテキストマネージャーと関係があると思いますが、この種の構成への参照と、ファイルが自動的に閉じられる理由が見つかりません。舞台裏で何が起こっているのかを誰が知っていて、それを説明できるでしょうか?