разбить строку на 2 на основании последнего появления разделителя - PullRequest
96 голосов
/ 08 сентября 2011

Я хотел бы знать, есть ли в Python встроенная функция для разбиения строки на 2 части, основываясь на последнем появлении разделителя.

например: рассмотрим строку «a b c, d, e, f» после разделителя «, я хочу вывод как

"a b c, d, e" и "f".

Я знаю, как манипулировать строкой, чтобы получить желаемый результат, но я хочу знать, есть ли встроенная функция в python.

Ответы [ 3 ]

110 голосов
/ 08 сентября 2011

Используйте rpartition(s). Это именно так.

Вы также можете использовать rsplit(s, 1).

70 голосов
/ 08 сентября 2011
>>> "a b c,d,e,f".rsplit(',',1)
['a b c,d,e', 'f']
52 голосов
/ 08 сентября 2011

Вы можете разделить строку по последнему вхождению разделителя с помощью rsplit:

Возвращает список слов в строке, разделенных строкой-разделителем(начиная справа).

Чтобы разделить последнюю запятую:

>>> "a b c,d,e,f".rsplit(',', 1)
['a b c,d,e', 'f']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...