Какова большая часть pythonic способа нормализовать lineends в строке?

класс FolderBrowserDialog является наилучшим вариантом.

7
задан kaleissin 18 November 2009 в 10:22
поделиться

3 ответа

... но это не обрабатывает "смешанные" текстовые файлы с совершенно запутанными соглашениями (Да, они все еще существуют!)

На самом деле все должно работать нормально:

>>> s = 'hello world\nline 1\r\nline 2'

>>> s.splitlines()
['hello world', 'line 1', 'line 2']

>>> '\n'.join(s.splitlines())
'hello world\nline 1\nline 2'

Какую версию Python вы используете ?

РЕДАКТИРОВАТЬ:

7
ответ дан 6 December 2019 в 08:43
поделиться
mixed.replace('\r\n', '\n').replace('\r', '\n')

должен обрабатывать все возможные варианты.

14
ответ дан 6 December 2019 в 08:43
поделиться

Есть еще больше конвекций, чем \ r \ n \ и \ n ? Если вам не нужны строки, достаточно просто заменить \ r \ n .

only_newlines = mixed.replace('\r\n','\n')
0
ответ дан 6 December 2019 в 08:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: