11.1 인덱스 지정하기
Python에서 부분 문자열 추출은 자주 사용되는 작업으로, 텍스트 데이터를 조작하고 문자열에서 중요한 정보를 추출하는 데 유용해. 여러 가지 방법이 있는데, 각 방법은 고유한 특징과 사용 범위가 있어.
슬라이스 사용하기
슬라이스 (slices)
는 Python에서 부분 문자열을 얻는 기본 방법이야. 슬라이스는
string[start
:stop
:step
]라는 문법으로 만들어져,
여기서:
start
— 시작 인덱스 (포함),stop
— 끝 인덱스 (포함 안 함),step
— 추출하는 문자 간의 간격.
슬라이스 문법은 추출하고자 하는 부분 문자열의 시작과 끝 인덱스를 지정할 수 있게 해줘.
text = "Hello, world!"
substring = text[7:12] # 'world' 출력
11.2 불완전한 인덱스 지정
부분 문자열을 추출할 때 세 가지 인덱스 모두를 지정할 필요는 없어.
- 만약
start
를 생략하면, 슬라이스는 문자열의 시작부터 시작해. - 만약
stop
를 생략하면, 슬라이스는 문자열의 끝까지 계속돼. - 만약
step
을 생략하면, 문자는 하나씩 추출돼.
예시:
7번째 문자부터 문자열 끝까지 부분 문자열을 얻는 예제를 작성해보자
text = "Hello, world!"
substring = text[7:] # 'world!' 출력
이제 문자열 시작부터 10번째 문자까지. 마지막 문자 범위는 결과 부분 문자열에 포함되지 않는다는 것을 기억해줘.
text = "Hello, world!"
substring = text[:10] # 'Hello, wor' 출력
11.3 음수 인덱스
Python의 음수 인덱스는 문자열의 끝부터 요소를 참조할 수 있어. 음수 인덱스를 사용하면 코드를 더 읽기 쉽고, 특히 문자열의 끝을 처리할 때 편리해.
문자열의 마지막 문자 얻기:
text = "Python"
last_char = text[-1]
print(last_char) # 'n' 출력
문자열의 마지막에서 두 번째 문자 얻기:
text = "Python"
second_last_char = text[-2]
print(second_last_char) # 'o' 출력
문자열의 마지막 세 문자를 얻기:
text = "Python"
last_three = text[-3:]
print(last_three) # 'hon' 출력
마지막 문자를 제외한 문자열 얻기:
text = "Python"
all_but_last = text[:-1]
print(all_but_last) # 'Pytho' 출력
고급 슬라이스 사용
step
매개변수를 통해 더 복잡한 슬라이스를 만들 수 있어, 예를 들어, 문자를 역순으로 추출할 때:
# 문자열 뒤집기
print(text[::-1]) # '!dlrow ,olleH'
GO TO FULL VERSION