DIVERSITY IS GOOD
DIVERSITY IS GOOD

테크/python basic

파이썬 문자열 찾기 메소드 가이드(find, rfind, startswith, endswith)

diversity is good 2025. 1. 22. 18:23
반응형

파이썬은 문자열을 처리할 때 매우 강력한 기능을 제공하는 메소드들을 가지고 있습니다. 문자열을 검색하거나 특정 조건에 맞는지 확인하는 데 사용되는 주요 메소드는 find, rfind, startswith, 그리고 endswith입니다. 이 튜토리얼에서는 각 메소드의 사용법과 예제를 자세히 살펴보겠습니다.


1. find 메소드

find 메소드는 문자열에서 특정 서브 문자열(substring)이 처음 나타나는 위치(인덱스)를 반환합니다. 만약 문자열에 해당 서브 문자열이 없으면 -1을 반환합니다.

문법:

string.find(substring, start, end)
  • substring: 찾고자 하는 문자열
  • start: (선택 사항) 검색을 시작할 인덱스
  • end: (선택 사항) 검색을 종료할 인덱스

예제:

text = "Python is amazing"
result = text.find("is")
print(result)  # 출력: 7

result = text.find("z")
print(result)  # 출력: -1

result = text.find("is", 8)
print(result)  # 출력: -1

2. rfind 메소드

rfind 메소드는 문자열에서 특정 서브 문자열이 마지막으로 나타나는 위치를 반환합니다. 만약 찾지 못하면 -1을 반환합니다.

문법:

string.rfind(substring, start, end)
  • substring: 찾고자 하는 문자열
  • start: (선택 사항) 검색을 시작할 인덱스
  • end: (선택 사항) 검색을 종료할 인덱스

예제:

text = "Python is amazing and Python is fun"
result = text.rfind("Python")
print(result)  # 출력: 23

result = text.rfind("z")
print(result)  # 출력: -1

result = text.rfind("Python", 0, 20)
print(result)  # 출력: 0

3. startswith 메소드

startswith 메소드는 문자열이 특정 서브 문자열로 시작하는지 확인합니다. 반환값은 True 또는 False입니다.

문법:

string.startswith(prefix, start, end)
  • prefix: 시작 여부를 확인할 서브 문자열
  • start: (선택 사항) 검색을 시작할 인덱스
  • end: (선택 사항) 검색을 종료할 인덱스

예제:

text = "Python is amazing"
result = text.startswith("Python")
print(result)  # 출력: True

result = text.startswith("is", 7)
print(result)  # 출력: True

result = text.startswith("amazing", 10, 17)
print(result)  # 출력: False

4. endswith 메소드

endswith 메소드는 문자열이 특정 서브 문자열로 끝나는지 확인합니다. 반환값은 True 또는 False입니다.

문법:

string.endswith(suffix, start, end)
  • suffix: 끝 여부를 확인할 서브 문자열
  • start: (선택 사항) 검색을 시작할 인덱스
  • end: (선택 사항) 검색을 종료할 인덱스

예제:

text = "Python is amazing"
result = text.endswith("amazing")
print(result)  # 출력: True

result = text.endswith("Python")
print(result)  # 출력: False

result = text.endswith("is", 0, 9)
print(result)  # 출력: True

메소드 비교 요약

메소드 설명 반환값

find 문자열에서 서브 문자열의 첫 번째 위치를 반환 (없으면 -1) 정수
rfind 문자열에서 서브 문자열의 마지막 위치를 반환 (없으면 -1) 정수
startswith 문자열이 특정 서브 문자열로 시작하는지 확인 불리언
endswith 문자열이 특정 서브 문자열로 끝나는지 확인 불리언

결론

이 네 가지 메소드는 문자열 검색 및 확인 작업을 효율적으로 수행하는 데 유용합니다. 특히, 특정 문자열이 포함된 위치를 찾거나 시작 및 끝 여부를 확인할 때 유용하게 사용할 수 있습니다. 이 튜토리얼을 통해 이러한 메소드들을 적절히 활용하여 문자열 처리를 더욱 효과적으로 할 수 있기를 바랍니다!

반응형