Современный способ: используйте newline = ''
Используйте параметр ключевого слова newline=
для io.open () , чтобы использовать терминаторы конца строки LF в стиле Unix:
import io
f = io.open('file.txt', 'w', newline='\n')
Это работает в Python 2.6+. В Python 3 вы также можете использовать параметр newline=
встроенной функции open()
вместо io.open()
.
Старый способ: двоичный режим
Старый способ предотвратить преобразование новой строки, который не работает в Python 3, - это открыть файл в режиме binary , чтобы предотвратить перевод символов конца строки:
f = open('file.txt', 'wb') # note the 'b' meaning binary
, но в Python 3 двоичный режим будет читать байтов , а не символов , поэтому он не будет выполнять то, что вы хотите. Вы, вероятно, получите исключения, когда попытаетесь выполнить строковый ввод-вывод в потоке. (например, «TypeError: 'str' не поддерживает интерфейс буфера").