endswith()
endswith()를 이용하여 문자열이 특정 문자열로 끝이 나는지 확인할 수 있습니다.
1. endswith()로 문자열이 특정 문자열로 끝나는지 확인
예를 들어 다음과 같이 'Hello world, Python'가 Python 으로 끝나는지 확인할 수 있습니다.
str = 'Hello world, Python'
if str.endswith('Python'):
print('It ends with Python')
if not str.endswith('Hello'):
print('It does not ends with Hello')
Output:
It ends with Python
It does not end with Hello
만약 대소문자를 구분하지 않고 비교를 하고 싶다면 lower()로 소문자로 변경 후, 소문자로 비교할 수 있습니다.
str = 'Hello world, Python'
if str.lower().endswith('python'):
print('It ends with python')
Output:
It ends with python
2. endswith()와 split()으로 단어가 특정 문자열로 끝나는지 확인
만약 어떤 문자열이 포함하고 있는 단어들 중에, 특정 문자열로 끝나는지 확인할 수도 있습니다.
다음과 같이 split()으로 whitespace 단위로 단어들을 분리하고, 각각의 단어들에 대해서 endswith()로 특정 단어로 끝나는지 확인할 수 있습니다.
str = 'Hello world, Python!'
strings = str.split()
list = []
for word in strings:
if word.endswith('!'):
list.append(word)
print(list)
Output:
['Python!']
3. Comprehension과 endswith()로 단어가 특정 문자열로 끝나는지 확인
위에서 구현한 예제를 다음과 같이 list comprehension으로 간단히 구현할 수 있습니다.
list = [word for word in strings if word.endswith('!')]
print(list)
Output:
['Python!']
4. 검사를 하려는 위치를 지정할 수 있습니다.
문법
string.endswith(value, start, end)
매개변수
value | 필수옵션. 검사할 대상 문자열 |
start | 선택옵션. 검사를 진행할 시작 위치 인덱스 |
end | 선택옵션. 검사를 진행할 종료 위치 인덱스 |
예제
7 ~ 14 위치에 "me" 로 끝이 나는지 검사
txt = "Hello, welcome to my world."
x = txt.endswith("me", 7, 14)
print(x)
x = txt.endswith("me", 7, 14)
print(x)
Output: True
7~14 사이 문자열은 "welcome" 입니다. 해당 문자열은 me로 끝나기 때문에 True 가 반환됩니다.
반응형
'Python > Python' 카테고리의 다른 글
파이썬 - 클래스(class) 모듈 (0) | 2022.12.15 |
---|---|
파이썬 - 클래스(class) 기초 (0) | 2022.12.15 |
파이썬 - String startswith(), 어떤 문자열로 시작하는지 확인 (0) | 2022.12.15 |
파이썬 문자열 자료형 - 연습문제 (0) | 2022.12.14 |
파이썬 프로그래밍의 기초- 타입 변환, 형변환 (0) | 2022.12.14 |