Python не будет очищать файл после каждого write
. Вам нужно либо вручную очистить его с помощью flush
:
>>> f.flush()
, либо закрыть его с помощью close
:
>>> f.close()
При использовании файлов в реальной программе рекомендуется использовать with
:
with open('some file.txt', 'w') as f:
f.write('some text')
# ...
Это гарантирует, что файл будет закрыт, даже если выбрано исключение. Если вы хотите работать в REPL, однако, вы можете захотеть закрыть его вручную, так как он попытается прочитать всю цель with
, прежде чем пытаться ее выполнить.