반응형
파이썬 문자열에서 마지막 구분 기호로 나누시겠습니까?
문자열에서 구분 기호가 마지막으로 나타날 때 문자열을 분할하는 데 권장되는 파이썬 관용구는 무엇입니까 ? 예:
# instead of regular split
>> s = "a,b,c,d"
>> s.split(",")
>> ['a', 'b', 'c', 'd']
# ..split only on last occurrence of ',' in string:
>>> s.mysplit(s, -1)
>>> ['a,b,c', 'd']
mysplit
분리 할 분리 문자의 발생 인 두 번째 인수를 사용합니다. 일반 목록 인덱싱과 마찬가지로 -1
끝에서 마지막을 의미합니다. 이것을 어떻게 할 수 있습니까?
.rsplit()
또는 .rpartition()
대신 사용하십시오 :
s.rsplit(',', 1)
s.rpartition(',')
str.rsplit()
분할 횟수를 지정할 수 str.rpartition()
있지만 한 번만 분할하지만 항상 고정 된 수의 요소 (접두사, 구분 기호 및 접미사)를 반환하며 단일 분할 경우에 더 빠릅니다.
데모:
>>> s = "a,b,c,d"
>>> s.rsplit(',', 1)
['a,b,c', 'd']
>>> s.rsplit(',', 2)
['a,b', 'c', 'd']
>>> s.rpartition(',')
('a,b,c', ',', 'd')
두 방법 모두 문자열의 오른쪽에서 분리되기 시작합니다. 제공하여 str.rsplit()
두 번째 인수로 최대, 당신은 단지 오른쪽 가장 발생을 분할 얻을.
rsplit을 사용할 수 있습니다
string.rsplit('delimeter',1)[1]
문자열을 반대로 가져 오려면
난 그냥 재미를 위해 이것을했다
>>> s = 'a,b,c,d'
>>> [item[::-1] for item in s[::-1].split(',', 1)][::-1]
['a,b,c', 'd']
참고 URL : https://stackoverflow.com/questions/15012228/splitting-on-last-delimiter-in-python-string
반응형
'programing tip' 카테고리의 다른 글
테이블에 열을 아직 추가하지 않은 경우 추가 (0) | 2020.06.02 |
---|---|
함수에서 docstring 가져 오기 (0) | 2020.06.02 |
SQL OVER () 절-언제 그리고 왜 유용합니까? (0) | 2020.06.02 |
expr에서 오버플로를 피하는 방법 (0) | 2020.06.02 |
쉘 스크립트에 대한 디자인 패턴 또는 모범 사례 (0) | 2020.06.02 |