Python 문자열은 슬라이싱을 지원하여 부분 문자열을 생성할 수 있습니다. Python 문자열은 변경할 수 없기 때문에 슬라이싱은 원본 문자열에서 새로운 부분 문자열을 생성하고 원래 문자열은 변경되지 않습니다.
Python 슬라이스 문자열
Python 슬라이스 문자열 구문은 다음과 같습니다:
str_object[start_pos:end_pos:step]
슬라이싱은 start_pos 인덱스(포함)에서 시작하여 end_pos 인덱스(제외)에서 끝납니다. step 매개변수는 start부터 end 인덱스까지의 단계를 지정하는 데 사용됩니다. Python 문자열 슬라이싱은 항상 다음 규칙을 따릅니다: s[:i] + s[i:] == s, 모든 인덱스 ‘i’에 대해. 이러한 매개변수는 모두 선택 사항입니다 – start_pos의 기본값은 0, end_pos의 기본값은 문자열의 길이이며, step의 기본값은 1입니다. 문자열 슬라이스 함수의 몇 가지 간단한 예제를 살펴보겠습니다.
s = 'HelloWorld'
print(s[:])
print(s[::])
출력:
HelloWorld
HelloWorld
모든 슬라이싱 매개변수가 제공되지 않았으므로 부분 문자열은 원래 문자열과 동일합니다. 문자열 슬라이싱의 몇 가지 더 예제를 살펴보겠습니다.
s = 'HelloWorld'
first_five_chars = s[:5]
print(first_five_chars)
third_to_fifth_chars = s[2:5]
print(third_to_fifth_chars)
출력:
Hello
llo
인덱스 값은 0부터 시작하므로 start_pos 2는 문자열의 세 번째 문자를 나타냅니다.
슬라이싱을 사용하여 문자열 뒤집기
슬라이싱을 사용하여 문자열을 뒤집을 수 있습니다. step 값을 -1로 제공합니다.
s = 'HelloWorld'
reverse_str = s[::-1]
print(reverse_str)
dlroWolleH
다음은 단계와 음수 인덱스 값을 사용하는 다른 예제를 살펴봅시다.
s1 = s[2:8:2]
print(s1)
출력: loo
여기서 부분 문자열에는 인덱스 2,4 및 6의 문자가 포함됩니다.
s1 = s[8:1:-1]
print(s1)
출력: lroWoll
여기서 인덱스 값은 끝에서 시작하여 가져옵니다. 부분 문자열은 끝에서 시작하여 인덱스 1에서 7까지 만듭니다.
s1 = s[8:1:-2]
print(s1)
출력: lool
파이썬 슬라이스는 음수 인덱스와 함께 작동하며, 이 경우 start_pos는 제외되고 end_pos가 부분 문자열에 포함됩니다.
s1 = s[-4:-2]
print(s1)
출력: or
파이썬 문자열 슬라이싱은 범위를 벗어난 인덱스를 우아하게 처리합니다.
>>>s = 'Python'
>>>s[100:]
''
>>>s[2:50]
'thon'
파이썬 문자열 슬라이스 함수를 사용하여 부분 문자열을 만드는 데 대해 여기까지입니다.
전체 파이썬 스크립트 및 더 많은 Python 예제는 저희 GitHub 리포지토리에서 확인할 수 있습니다.
Source:
https://www.digitalocean.com/community/tutorials/python-slice-string