Проблема возникает потому, что для форматирования текста вы используете f-строку (f"> \n{l}"
) и передаете переменную l
в эту f-строку.Хотя ваша переменная l
была установлена в последний раз на последней итерации предыдущего цикла, вы печатаете последний элемент Y
в вашем файле.
Правильный синтаксис будет:
with open("abc.txt", "w") as text_file:
print(f'> \n{Y}', file=text_file)
Или, может быть, это ваш абзац неправильный, и вы хотели это сделать:
for l in Y:
print(l, end = '')
with open("abc.txt", "w") as text_file:
print(f'> \n{l}', file=text_file)
Кроме того, я бы порекомендовал сделать что-то вроде этого:
with open("abc.txt", "w") as f:
for l in Y:
f.write(f'> {l}\n')
Или еще лучше, если это возможно:
with open("abc.txt", "w") as f:
f.writelines(Y)