728x90
index()와 find()는 Python 문자열에서 특정 문자열 또는 문자의 인덱스(위치)를 찾는 데 사용되는 메서드입니다. 주요한 차이점은 다음과 같습니다:
1. 반환값:
- index(): 찾는 문자열 또는 문자가 문자열 내에서 발견되면 해당 인덱스를 반환합니다. 만약 찾는 문자열 또는 문자가 발견되지 않으면 ValueError 예외가 발생합니다.
- find(): 찾는 문자열 또는 문자가 문자열 내에서 발견되면 해당 인덱스를 반환합니다. 만약 찾는 문자열 또는 문자가 발견되지 않으면 -1을 반환합니다.
2. 예외 처리:
- index(): 찾는 문자열 또는 문자가 발견되지 않으면 ValueError 예외가 발생합니다. 따라서, index()를 사용할 때는 예외 처리를 수행하는 것이 좋습니다.
- find(): 찾는 문자열 또는 문자가 발견되지 않으면 -1을 반환하기 때문에 예외 처리가 필요하지 않습니다.
3. 사용 가능한 자료형:
- index(), find() 모두 문자열 객체에서 사용 가능합니다. 즉, 문자열 내에서 다른 문자열 또는 문자의 인덱스를 찾을 수 있습니다.
다음은 index()와 find() 메서드의 간단한 예제입니다:
text = "Hello, World!"
index1 = text.index("o")
print(index1) # 4
index2 = text.find("o")
print(index2) # 4
index3 = text.index("z") # ValueError: substring not found
index4 = text.find("z")
print(index4) # -1
위의 코드에서 index1과 index2는 문자열 text에서 첫 번째로 나타나는 "o"의 인덱스를 반환합니다. index3는 "z"가 text 안에 존재하지 않기 때문에 ValueError를 발생시킵니다. index4는 "z"가 text 안에 존재하지 않기 때문에 -1을 반환합니다.
따라서, index()와 find() 메서드는 문자열에서 특정 문자열 또는 문자의 위치를 찾는 데 사용되며, 예외 처리의 유무와 반환값의 차이가 주요한 차이점입니다.
'성장하기 > Python' 카테고리의 다른 글
[함수] strip, rstrip, lstrip (0) | 2023.06.18 |
---|---|
알파벳 상수 (0) | 2023.06.18 |
[함수] divmod (0) | 2023.06.17 |
[함수] dictionary 의 get (0) | 2023.06.17 |
[함수] comb (0) | 2023.06.17 |