728x90
파이썬에서 찾고자하는 요소를 앞에서부터 찾기 위해서는 find( ) 또는 index( )를 사용하면 된다.
* find/index 함수의 차이점
두 함수 모두 같은 구조이지만, 차이점이 존재한다.
- find: 리스트, 튜플, 딕셔너리에서 사용 불가능하며 (문자열에서만 사용 가능), 찾는 문자가 없을 경우 -1 반환
- index: 리스트, 튜플에서 사용 가능, 딕셔너리에서 사용 불가능, 찾는 문자가 없을 경우 ValueError 발생
만약 뒤에서부터 찾고싶다면???
주어진 문자열 혹은 리스트를 거꾸로 정렬한 뒤 찾을 수도 있지만,
rfind( ) 혹은 rindex( )를 사용하면 된다.
rfind( )
반복되는 문자열이 없다면 find( ) 함수와 같은 결과가 나오지만,
반복되는 문자열이 있다면 뒤에서부터 주어진 문자열과 일치하는 위치를 찾아준다.
string = 'wxyzwxyz'
print(string.rfind('xyz'))
# 5
# 찾고자 하는 문자열의 첫 위치 인덱스 반환
print(string.rfind('a'))
# -1
만약, 찾고자하는 문자열이 없다면 -1을 리턴한다.
시작위치와 끝 위치를 지정해주고 싶다면..
find(찾을 문자열, 시작 위치) 혹은 find(찾을 문자열, 시작 위치, 종료 위치)로 작성해주면 된다!
rindex( )
이 역시 반복되는 문자가 없다면, index( ) 함수와 같은 결과가 나오지만,
반복되는 문자가 있다면, 뒤에서부터 위치를 찾아준다.
string = 'wxyzwxyz'
print(string.rindex('x'))
# 5
print(string.rindex('a'))
# ValueError
찾고자하는 문자열이 없다면 ValueError가 발생한다.
728x90
'PYTHON' 카테고리의 다른 글
[PYTHON] 공백 및 문자 제거 함수 - strip, rstrip, lstrip (1) | 2024.02.08 |
---|---|
[PYTHON] 문자열을 식으로 계산해주는 함수 - eval (0) | 2024.02.08 |
[PYTHON] 리스트 원소 타입 바꾸기 - map (0) | 2024.02.05 |
.ipynb 파일을 .py파일로 변경하기 (0) | 2024.02.04 |
[PYTHON] 정규표현식 활용하기 (0) | 2024.02.02 |