더북(TheBook)
>>> has_vowel("Oh no!")                                # ➊
True
>>> has_vowel("My my!")                                # ➊
MAYBE
>>> if has_vowel(my_phrase) is True:                   # ➋
...     print("The phrase definitely has a vowel")
...

➊ 답변을 출력하기에 충분합니다.

➋ 3치 논리로 인해 파이썬답지 않은 형식을 사용할 수밖에 없습니다.

 

만약 has_vowel() 함수를 재설계한다면, Vowel = enum.Enum("Vowel", ["Yes", "No", "Maybe"])로 정의한 후, 상황에 따라 Vowel.Yes, Vowel.No, Vowel.Maybe를 반환할 수 있습니다. 비교에는 명시적인 동일성이나 동등성 검사가 필요하겠지만, 어쨌든 이와 같은 상황에서 의도를 더 명확하게 할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.