同様のコードの 2 つのバージョンがあります。1 つは機能し、もう 1 つは機能しません。
バージョン 1
#some code
with open('file', 'w') as f:
f.writelines(new_lines)
with open('file') as f:
i = 0
for line in f:
i = i + 1
if i != 5 and i != 18 and i != 27:
row.append(line)
バージョン 2
# some code
with open('file', 'w') as f:
f.writelines(new_lines)
i = 0
for line in f:
i = i + 1
if i != 5 and i != 18 and i != 27:
row.append(line)
バージョン 2 のコードを実行すると、ファイルが開いていないというエラーが表示されました。明らかにコードがまだwith
ステートメントにあるため、混乱しました。f.writelines() メソッドの直後にファイルが自動的に閉じられますか?