Я работаю над простым скриптом python для записи некоторых данных в два текстовых файла. Мой код выглядит так:Когда я пишу два файла в python, второй всегда пуст
with open('file1.txt', 'w') as file1:
for thing in stuff1:
file1.write(thing + '\n')
with open('file2.txt', 'w') as file2:
for thing in stuff2:
file2.write(thing + '\n')
Когда я запускаю программу, файл1 получается как ожидалось, но file2 пуст.
Однако, если я переключу порядок, в котором я пишу в файлы (это означает, что я пишу сначала в файл2, а затем в файл1), файл2 получается как ожидалось, а файл1 пуст.
Другими словами, файл, в который я пишу второй, всегда оказывается пустым.
Я попытался добавить file1.flush()/file2.flush() внутри циклов, но безрезультатно. Любая идея, почему это может произойти?
что такое 'stuff1' и' stuff2'? Ваше письмо в файл кажется одобренным, если у них есть контент. –
Вы изменили 'stuff1' и' stuff2'? – Kasramvd
Отдел избыточности Redundancy хочет знать, почему вы пишете код дважды. Сделайте его функцией, которая принимает 'stuff' и' filename'. – jonrsharpe