вы делаете это неправильно
out_file = open("output.txt", "w")
for line in open("input.txt", "r"):
out_file.write(line)
out_file.write("\n")
Обратите внимание, что мы не проверяем окончания новой строки, поскольку мы выбираем элементы по одной строке за раз, поэтому мы уверены, что после прочитанной строки следует новая строка
Но зачем вам делать это вместо обычной копии?
Редактировать : если все, что вам нужно, это скопировать файл, используйте это:
from shutil import copy
copy("input.txt", "output.txt")
Если вам нужно прочитать весь файл, используйте функцию read()
, например:
file_data = open("input.txt", "r").read()
# manipulate the data ...
output = open("output.txt", "w")
output.write(file_data)
output.close()
РЕДАКТИРОВАТЬ 2 : поэтому, если вы пытаетесь отобразить другие значения ASCII для каждого символа, вы делаете это правильно, за исключением:
- Вы забыли написать другие символы, вы будете выводить только
\n
символов
- Убедитесь, что вы на самом деле прочитали новые строки, поскольку
readlines()
и итерация по файлу не возвращают новые строки.
Ваш код будет выглядеть примерно так:
for j in range(len(orig[i])):
curr = orig[i][j]
if ord(curr) == 10:
enctextCC.write(curr)
else:
enctextCC.write(transformed(curr))