Как написать нативный символ новой строки в дескриптор файла в Python? - PullRequest
28 голосов
/ 03 августа 2009

Функция os.write может использоваться для записи байтов в дескриптор файла (не файловый объект). Если я выполню os.write(fd, '\n'), только символ LF будет записан в файл, даже в Windows. Я хотел бы иметь CRLF в файле в Windows и только LF в Linux.
Каков наилучший способ добиться этого?

Я использую Python 2.6, но мне также интересно, есть ли у Python 3 другое решение.

Ответы [ 2 ]

59 голосов
/ 03 августа 2009

Используйте это

import os
os.write(fd, os.linesep)
8 голосов
/ 03 августа 2009

Как насчет os.write(<file descriptor>, os.linesep)? (import os не требуется, поскольку вы, кажется, уже импортировали его, иначе вы могли бы получить ошибки, используя os.write для начала.)

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