我正在尝试以下问题:
给出一个英语单词,如果该单词包含的元音多于非元音,则返回True
;否则,返回False
。该单词将始终是一个单词,没有标点符号或空格。它仅包含大写和小写字母。
如果该短语的元音超过一半,则应返回True:
>>> has_more_vowels("moose")
True
如果是半个元音(或更少),则为假:
>>> has_more_vowels("mice")
False
>>> has_more_vowels("graph")
False
不要将“ y”视为元音:
>>> has_more_vowels("yay")
False
大写元音仍然是元音
>>> has_more_vowels("Aal")
True
这是我到目前为止尝试过的:
def has_more_vowels(word):
"""Does word contain more vowels than non-vowels?"""
# START SOLUTION
lowercase_vowels = {'a', 'e', 'i', 'o', 'u'}
vowel_count = 0
for letter in word:
if letter.lower() in lowercase_vowels:
vowel_count = vowel_count + 1
return vowel_count > (len(word) / 2)