Разбить строку, разделенную "\ r \ n", в список строк? - PullRequest
22 голосов
/ 27 июля 2010

Я читаю некоторые данные из метода связи модуля подпроцесса.Он входит в виде большой строки, разделенной символами "\ r \ n".Я хочу разбить это на список строк.Как это выполняется в Python?

Ответы [ 3 ]

42 голосов
/ 27 июля 2010

Используйте метод splitlines для строки.

Из документов:

str.splitlines ([keepends]) Возврат списка строкв строке, нарушая границы строк.Разрывы строк не включаются в результирующий список, если не задано значение keepends и true.

Это будет правильно делать, независимо от того, заканчиваются ли строки на «\ r \ n», «\ r» или «\».n "независимо от ОС.

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

>>> "foo\n\rbar".splitlines()
['foo', '', 'bar']
2 голосов
/ 27 июля 2010

Проверьте документ для строковых методов. В частности, метод разделения.

http://docs.python.org/library/stdtypes.html#string-methods

1 голос
/ 27 июля 2010
s = re.split(r"[~\r\n]+", string_to_split)

Это даст вам список строк в с.

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