класс FolderBrowserDialog является наилучшим вариантом.
... но это не обрабатывает "смешанные" текстовые файлы с совершенно запутанными соглашениями (Да, они все еще существуют!)
На самом деле все должно работать нормально:
>>> 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 вы используете ?
РЕДАКТИРОВАТЬ:
mixed.replace('\r\n', '\n').replace('\r', '\n')
должен обрабатывать все возможные варианты.
Есть еще больше конвекций, чем \ r \ n \
и \ n
? Если вам не нужны строки, достаточно просто заменить \ r \ n
.
only_newlines = mixed.replace('\r\n','\n')