Заменить текст в файле с Python - PullRequest
6 голосов
/ 01 июня 2010

Я пытаюсь заменить некоторый текст в файле значением. Все работает нормально, но когда я смотрю на файл после его завершения, появляется новая (пустая) строка после каждой строки в файле. Могу ли я что-нибудь сделать, чтобы этого не случилось?

Вот код, который у меня есть:

  import fileinput
    for line in fileinput.FileInput("testfile.txt",inplace=1):
       line = line.replace("newhost",host)
       print line

Спасибо, Аарон

Ответы [ 3 ]

3 голосов
/ 01 июня 2010

Каждый line читается из файла с завершающим символом новой строки, и печать добавляет один из них.

Вы можете:

print line,

Который не будет добавлять новую строку после строки.

2 голосов
/ 01 июня 2010

print line автоматически добавляет новую строку. Лучше вместо этого сделать sys.stdout.write(line).

0 голосов
/ 01 июня 2010

print добавляет символ новой строки:

Символ '\ n' пишется в конце, если оператор print не заканчивается запятой. Это единственное действие, если инструкция содержит только ключевое слово print.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...