我正在尝试解决下面的这个问题
假设s是一个小写字符串。写一个程序 计算字符串s中包含的元音数量。有效的元音 是:'a','e','i','o'和'u'。例如,如果s = 'azcbobobegghakl',您的程序应该打印:
元音数量:5
我写了以下代码
s='azcbobobegghakl'
count = 0
for vowels in s:
if vowels in 'aeiou':
count += 1
print ('Number of vowels: ' + str(count))
这不正确。我了解到你不应该将“azcbobobegghakl”定义为s或g或其他任何内容。我是否需要使用某种功能才能完成此任务?
答案 0 :(得分:2)
您可以使用列表推导,然后计算列表。
print("Number of vowels: {}".format(len([vowel for vowel in input() if vowel in "aeiou"])))
问题是要求计算任何字符串中的元音数量,而不仅仅是示例azcbobobegghakl
,因此您应该用input()
替换固定字符串。
答案 1 :(得分:1)
你所拥有的东西似乎可以完成问题所需的任务,但是,如果想要以函数的形式实现它,你可以重新使用已经拥有的代码作为函数:
def count_vowels(s):
count = 0
for vowels in s:
if vowels in 'aeiou':
count += 1
print ('Number of vowels: ' + str(count))
然后,您可以使用以下命令执行您的程序:
count_vowels('azcbobobegghakl')
答案 2 :(得分:0)
s = str(input("Enter a phrase: "))
count = 0
for vowel in s:
if vowel in 'aeiou':
count += 1
print("Number of vowels: " + str(count))
这似乎适用于python,但它不是正确的答案。