我正在编写一个函数,该函数应该计算输入短语中的数字。该短语将存储为元组,而while循环应计算元音的数量。到目前为止,我已经知道了。
def whilephrase():
vowels=['A','a','E','e','I','i','O','o','U','u']
print('Please give me a phrase')
inputphrase=input()
inputphrase=tuple(inputphrase)
i=0
while True:
if vowels in inputphrase:
i=i+1
else:
print(i)
但这只是打印出一个无穷尽的零循环。
最佳答案
您需要遍历输入短语:
for character in inputphrase:
if character in vowels:
i = i + 1
print(i)
但是,当然有更简单的方法:
def count_vowels(string):
return sum(1 for c in string if c.lower() in "aeiou")
编辑:使用while循环(尽管我不确定为什么您要这么做):
index = 0
i = 0
while index < len(inputphrase):
if inputphrase[index] in vowels:
i += 1
index += 1
print(i)
关于python - Python While循环与元组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35213176/