为了账号安全,请及时绑定邮箱和手机立即绑定

编写元音计数器

编写元音计数器

开心每一天1111 2022-04-27 16:09:00
这是我的家庭作业:编写函数 vowelCount(),将字符串作为输入,计算并打印字符串中元音出现的次数。vowelCount ('Le Tour de France') a、e、i、o、u 分别出现 1、3、0、1、1 次。这是我到目前为止所做的,但它不起作用!我该怎么办?def vowelCount(sentence):    sentence = sentence.lower()    vowels = "aeiou"    count = 0    if vowels in sentence:        count = +1        print("a, e, i, o, u, appear, respectively," count "times.")我对 Python 很不好,以至于我永远无法独自完成作业。我还不如放弃学习。
查看完整描述

1 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

你正在做错误的初始化。


vowels = "aeiou"

您应该将其声明为列表或字典。现在您的解决方案的问题是您正在检查您已初始化为“aeiou”的“元音”是否存在于传入字符串中


if vowels in sentence:

所以在这里你正在检查“aeiou”,整个字符串是否存在于传入的句子中。您没有检查单个元音和单个字符。


解决方案是我们喜欢从 0 到 n-1 遍历整个句子,其中 n 是它的长度并检查每个字符。


 def count(string):

    #we use hashmap to make lookup operation cheap

    mp = {'a':1,'e':1,'i':1,'o':1,'u':1}

    n = len(s)

    count = 0

    for i in range(n):  #iterating for every element in string

        if s[i] in mp:   #checking if it is vowel or not

            count += 1

    return count


查看完整回答
反对 回复 2022-04-27
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信