有人可以告诉我为什么我的代码无效吗?

时间:2017-12-19 18:41:11

标签: python edx

所以这是我被问到的问题:

假设s是一个小写字符串。 编写一个程序,计算字符串s中包含的元音数量。有效的元音是:'a','e','i','o'和'u'。例如,如果s ='azcbobobegghakl',您的程序应打印:

元音数量:5

这是我制作的字符串和我用于计算机的代码,用于给出元音数量:

s = 'qwertyuiop'
count = 0
for letter in s:
    if letter in 'aeiou':
        count += 1

print ('Number of vowels: ' + str(count))

结果是:元音数量:4

在Python上它可以工作,但在测验中它一直告诉我它是不正确的。 有经验的人可以解释为什么吗?

1 个答案:

答案 0 :(得分:1)

什么是"测验"在这种背景下?您的示例字符串与示例中的字符串不同。由于您已经对其进行了硬编码,因此测试算法可能不接受它。

程序文本是正确的,但它是硬编码的。

def num_of_vowels(s):
    count = 0
    for letter in s:
        if letter in 'aeiou':
            count += 1
    return count

print ('Number of vowels in %s: %d' % (s, num_of_vowels(s))