문자열이 모음(vowel)으로 시작하는지 확인해야 하는 경우, 파이썬에서 제공하는 startswith 메서드를 활용하면 됩니다. 이 메서드는 특정 문자(여기서는 모음)로 문자열이 시작하는지 여부를 손쉽게 검사할 수 있게 해줍니다.
예제 코드
아래는 리스트에서 모음으로 시작하는 문자열만 골라내는 방법을 보여주는 예제입니다.
my_list = ["Hi", "there", "how", "are", "u", "doing"]
print("The list is : ")
print(my_list)
my_result = []
vowel = "aeiou"
for sub in my_list:
flag = False
for letter in vowel:
if sub.startswith(letter):
flag = True
break
if flag:
my_result.append(sub)
print("The resultant string is : ")
print(my_result)실행 결과
The list is : ["Hi", "there", "how", "are", "u", "doing"] The resultant string is : ['are', 'u']
코드 설명
- 먼저 문자열 리스트를 정의하고 콘솔에 출력합니다.
- 결과를 저장할 빈 리스트
my_result를 선언합니다. - 모음들을 하나의 문자열
vowel("aeiou")로 정의합니다. - 리스트의 각 요소를 순회하면서
flag변수를False로 초기화합니다. - 각 문자열의 첫 글자가 모음 문자열의 어떤 글자와 일치하는지
startswith메서드로 비교합니다. - 일치하는 경우
flag를True로 설정하고 반복을 종료한 뒤, 해당 문자열을 결과 리스트에 추가합니다. - 최종적으로 모음으로 시작하는 문자열만 담긴 결과 리스트가 콘솔에 출력됩니다.
더 간결한 대안: 리스트 컴프리헨션
위 코드는 다음과 같이 리스트 컴프리헨션을 사용하면 훨씬 간결하게 작성할 수 있습니다.
vowel = "aeiou" my_result = [sub for sub in my_list if sub[0].lower() in vowel] print(my_result) # ['are', 'u']
이 방식은 각 문자열의 첫 글자를 소문자로 변환한 뒤 모음 문자열에 포함되어 있는지만 확인하면 되므로, 코드가 짧아지고 가독성도 좋아집니다. 대소문자 구분 없이 처리하고 싶다면 .lower()를 활용하는 것이 좋습니다.