버전 2.5에서는 에 파티션이라는 기능이 추가되었습니다. 간단한 예를 들어보세요: >>> 'http://www.donews.net/limodou'.partition('://')
('http', '://', 'www.donews.net/limodou')>>> 'file:/a.html'.partition('://')
('파일 :/ a.html', ”, ”)
첫 번째 예에서 볼 수 있듯이 지정된 구분 기호에 따라 문자열을 분할하는 데 사용됩니다. string 지정된 구분 기호를 포함하고, 요소 3개로 구성된 튜플을 반환합니다. 첫 번째는 구분 기호 왼쪽에 있는 하위 문자열이고, 두 번째는 구분 기호 자체이고, 세 번째는 구분 기호 오른쪽에 있는 하위 문자열입니다. 두 번째 예에서는 지정된 구분 기호를 찾을 수 없는 경우 반환은 여전히 3개 요소 튜플이고 첫 번째는 전체 문자열이고 두 번째와 세 번째는 빈 문자열임을 보여줍니다.
그러면 it과 분할(sep, 1)의 차이점이 무엇인지 묻는 사람이 있을 수 있습니다. 우선, 분할은 고정 길이 반환 값을 반환하지 않을 수 있습니다.
목록을 반환합니다. 발견되면 2요소 목록을 반환합니다. >>> ‘a.b.c’.split(‘,’, 1)
['a.b.c']
>>> ‘a.b.c’.split(‘.’, 1)
['a', 'b.c']
어떤 경우에는 partition(sep) 및 rpartition(sep)(오른쪽에서 왼쪽으로 일치)이 Split(sep, 1) 및 rsplit(sep, 1)과 유사한 기능을 갖습니다. 그러나 실제로 파티션은 분할이 아닌 찾기 및 인덱스를 대체하기 위해 생성됩니다. 대부분의 경우 먼저 위치를 찾은 다음 분할해야 합니다. 파티션을 사용하는 것이 훨씬 편리합니다. 예:
>>> a = ‘http://www.donews.net’ >>> pos = a.find(‘://’) >>> if pos > -1: … print a[:pos], a[pos+1:] http www.donews.net
>>> a = ‘http://www.donews.net’ >>> left, sep, right = a.partition(‘://’) >>> print left, right http www.donews.net
파티션을 사용하는 것이 더 간단하지 않나요?
동시에 버전 2.5에서는 startwith와 endwith가 변경되었으며 첫 번째 매개변수는 튜플이 될 수 있습니다. 이는 여러 상황을 판단할 때 매우 편리합니다. 예를 들어 원래 하나의 값만 지원했던 파일 이름 접미사를 확인하려면 먼저 이를 분할한 다음
>>> a = ‘a.gif’ >>> import os.path >>> ext = os.path.splitext(a)[1] >>> if ext in ['.gif', '.png', '.bmp']: … print ‘found’ … found
와 같이 Endswith가 필요하지 않은지 확인해야 할 수 있습니다.
>>> a = ‘a.gif’ >>> if a.endswith((‘.gif’, ‘png’, ‘.bmp’)): … print ‘found’ … found
훨씬 간단하죠? 위의 튜플을 목록으로 바꾸면 작동하지 않는다는 점에 유의하세요. 필수인 것 같습니다.
당신과 내가 발견하기를 많은 흥미로운 것들이 기다리고 있습니다.
[관련 추천]
1.
파이썬의 문자열 함수(파티션)에 대한 자세한 설명 공유2.
MySQL 데이터 테이블의 코드 예제에 대한 간략한 분석 파티셔닝 기술 PARTITION위 내용은 Python의 파티션 문자열 함수 예제 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!