#python
Вопрос:
Я хочу создать свой модуль, но я не могу поместить переключатель новой строки рядом с переменной file.write
. Вот мой код.
import itertools file = open(fn, "w") lines = input('Choose how many lines: ') lines = int(lines) for _ in itertools.repeat(None, lines): data = input() file.write(data; "n") file.close()
Есть ли какой-нибудь способ вставить новые строки в файлы с помощью file.write
?
Комментарии:
1.
file.write(f'{data}n')
2. То есть
n
. В вашем коде есть опечатка.
Ответ №1:
Вы можете открыть файл в режиме «добавить» в режиме «a» вместо режима записи «w».:
file = open(fn, "a")
Затем, после того как вы прочитаете новую строку, вы можете добавить ее с:
file.write(f"{data}n")
Когда вы открываете файл в режиме «w» (запись), файл очищается/перезаписывается перед следующей записью. Но, открыв файл в режиме «a» (добавить), вы можете добавить в файл дополнительные данные.
Ответ №2:
Откройте файл в режиме добавления. В режиме записи всякий раз, когда вы записываете в файл, он перезаписывает все с самого начала, и в конечном итоге вы добавите только последние данные. В режиме добавления файл остается таким, как есть, и все, что вы напишете, будет записано в файл без каких-либо изменений. Чтобы открыть режим добавления файла, измените «w» на «a».