반응형
질문
파이썬에서 문자열 내의 문자의 위치를 어떻게 얻을 수 있을까요?
답변
이에 대한 두 가지 문자열 메서드가 있습니다. find()
와 index()
입니다. 두 메서드의 차이점은 검색 문자열을 찾지 못했을 때 발생하는 일입니다. find()
는 -1
을 반환하고 index()
는 ValueError
를 발생시킵니다.
find()
사용하기
>>> myString = '문자의 위치'
>>> myString.find('s')
2
>>> myString.find('x')
-1
index()
사용하기
>>> myString = '문자의 위치'
>>> myString.index('s')
2
>>> myString.index('x')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: substring not found
Python 매뉴얼에서
string.find(s, sub[, start[, end]])
s에서 sub 문자열이s[start:end]
에 완전히 포함된 위치 중 가장 낮은 인덱스를 반환합니다. 실패 시-1
을 반환합니다. start와 end의 기본값 및 음수 값의 해석은 슬라이스와 동일합니다.
그리고:
string.index(s, sub[, start[, end]])
find()
와 유사하지만 서브 문자열을 찾지 못했을 때ValueError
를 발생시킵니다.
반응형
댓글