logo

Python의 문자열 슬라이싱

Python 슬라이싱은 주어진 문자열을 처음부터 끝까지 각각 슬라이싱하여 하위 문자열을 얻는 것입니다.

Python의 문자열 슬라이싱 작동 방식

을 위한 슬라이싱 이해 우리는 다양한 방법을 사용할 것입니다. 여기서는 문자열 슬라이싱의 두 가지 방법을 다룰 것입니다. 하나는 빌드 내 슬라이스() 방법을 사용하고 다른 하나는 [:] 배열 슬라이스 . Python의 문자열 슬라이싱은 주어진 문자열을 처음부터 끝까지 각각 슬라이싱하여 하위 문자열을 얻는 것입니다.



Python 슬라이싱은 두 가지 방법으로 수행할 수 있습니다.

  • 슬라이스() 메소드 사용
  • 배열 슬라이싱 [:: ] 방법 사용

양수 및 음수 인덱스에 대한 인덱스 추적기: 파이썬에서 문자열 인덱싱과 슬라이싱. 여기서 문자열을 역방향으로 추적할 때 Negative가 고려됩니다.

파이썬 문자열 조각

방법 1: Slice() 메서드 사용

Slice() 생성자는 range(start, stop, step)로 지정된 인덱스 세트를 나타내는 슬라이스 객체를 생성합니다.



통사론:

  • 슬라이스(중지)
  • 슬라이스(시작, 중지, 단계)

매개변수: 시작: 객체의 슬라이싱이 시작되는 시작 인덱스입니다. 멈추다: 객체의 슬라이싱이 멈추는 종료 인덱스입니다. 단계: 슬라이싱을 위한 각 인덱스 간의 증분을 결정하는 선택적 인수입니다. 반환 유형: 지정된 범위의 요소만 포함하는 슬라이스된 객체를 반환합니다.

예:



파이썬3




# Python program to demonstrate> # string slicing> # String slicing> String>=> 'ASTRING'> # Using slice constructor> s1>=> slice>(>3>)> s2>=> slice>(>1>,>5>,>2>)> s3>=> slice>(>->1>,>->12>,>->2>)> print>(>'String slicing'>)> print>(String[s1])> print>(String[s2])> print>(String[s3])>

>

>

산출:

String slicing AST SR GITA>

방법 2: 목록/배열 슬라이싱 [::] 방법 사용

Python에서는 인덱싱 구문을 슬라이스 객체 대신 사용할 수 있습니다. 이것은 다음을 사용하여 문자열을 분할하는 쉽고 편리한 방법입니다. 목록 분할 구문 측면과 실행 측면 모두에서 배열 슬라이싱이 가능합니다. 시작, 끝 및 단계는 슬라이스() 생성자와 동일한 메커니즘을 갖습니다.

아래에서 우리는 볼 것이다 예제가 포함된 Python의 문자열 슬라이싱.

통사론

arr[start:stop] # items start through stop-1 arr[start:] # items start through the rest of the array arr[:stop] # items from the beginning through stop-1 arr[:] # a copy of the whole array arr[start:stop:step] # start through not past stop, by step>

예시 1:

이 예에서는 다음을 볼 수 있습니다. 파이썬 목록에서 슬라이싱 인덱스는 0 인덱스에서 시작하여 2 인덱스로 끝납니다( 3-1=2 에서 중지).

파이썬3




# Python program to demonstrate> # string slicing> # String slicing> String>=> 'GEEKSFORGEEKS'> # Using indexing sequence> print>(String[:>3>])>

>

>

산출:

GEE>

예시 2:

이 예에서는 1개의 인덱스에서 시작하여 5개의 인덱스로 끝나는 예를 볼 수 있으며(3-1=2에서 중지) 건너뛰는 단계는 2입니다. 이는 다음과 같은 좋은 예입니다. Python이 문자열을 문자별로 분할합니다.

파이썬3




# Python program to demonstrate> # string slicing> # String slicing> String>=> 'GEEKSFORGEEKS'> # Using indexing sequence> print>(String[>1>:>5>:>2>])>

>

>

산출:

 EK>

예시 3:

이 예에서는 -1 인덱스에서 시작하여 -12 인덱스로 끝나는 예(3-1=2에서 중지)를 볼 수 있으며 건너뛰는 단계는 -2입니다.

파이썬3




# Python program to demonstrate> # string slicing> # String slicing> String>=> 'GEEKSFORGEEKS'> # Using indexing sequence> print>(String[>->1>:>->12>:>->2>])>

>

>

산출:

SEGOSE>

예시 4:

이 예에서는 전체 문자열이 역순으로 인쇄됩니다.

파이썬3




# Python program to demonstrate> # string slicing> # String slicing> String>=> 'GEEKSFORGEEKS'> # Prints string in reverse> print>(String[::>->1>])>

>

>

산출:

SKEEGROFSKEEG>

메모: 문자열에 대한 자세한 내용을 보려면 여기를 클릭하세요.

islice() 사용
islice()는 itertools 모듈에 정의된 내장 함수입니다. 모든 iterable의 인덱스 기반 슬라이싱인 iterator를 얻는 데 사용됩니다. 표준 슬라이스처럼 작동하지만 반복자를 반환합니다.

통사론:

itertools.islice(반복 가능, 시작, 중지[, 단계])
매개변수: iterable: 목록, 문자열, 튜플 등과 같은 반복 가능한 시퀀스. start: 반복 가능 항목의 슬라이싱이 시작되는 시작 인덱스입니다. stop: iterable의 슬라이싱이 끝나는 끝 인덱스입니다. 단계: 선택적 인수입니다. 슬라이싱을 위한 각 인덱스 사이의 간격을 지정합니다. 반환 유형: 주어진 반복 가능 시퀀스에서 반복자를 반환합니다.

예:

파이썬3




# Python program to demonstrate> # islice()> > import> itertools> > # Using islice()> String>=> 'GEEKSFORGEEKS'> > # prints characters from 3 to 7 skipping one character.> print>(''.join(itertools.islice(String,>3>,>7>)))> #This code is contributed by Edula Vinay Kumar Reddy>

>

while 루프 자바를 수행
>

산출

KSFO>