Python 如何检查列表中的每三个元素并计算该字符串中的元音?

Python 如何检查列表中的每三个元素并计算该字符串中的元音?,python,string,list,loops,count,Python,String,List,Loops,Count,a。定义一个名为wordlist的字符串列表。列表应至少包含10个字符串 b。从第一个元素(即元素0)开始,检查循环中列表的每三个元素(即第0个元素、第3个元素、第6个元素、第9个元素……等等),并计算该字符串中的元音数 c。用合适的信息打印字符串和串中的元音数 d。如果字符串包含3个或更多元音,则退出循环(不需要检查其余元素) e。如果在找到包含3个或更多元音的字符串后退出循环,请打印“找到包含3个或更多元音的字符串!”';否则打印“未找到合适的字符串。” 示例输出: 如果有人能给我指引正确

a。定义一个名为wordlist的字符串列表。列表应至少包含10个字符串

b。从第一个元素(即元素0)开始,检查循环中列表的每三个元素(即第0个元素、第3个元素、第6个元素、第9个元素……等等),并计算该字符串中的元音数

c。用合适的信息打印字符串和串中的元音数

d。如果字符串包含3个或更多元音,则退出循环(不需要检查其余元素)

e。如果在找到包含3个或更多元音的字符串后退出循环,请打印“找到包含3个或更多元音的字符串!”';否则打印“未找到合适的字符串。

示例输出:

如果有人能给我指引正确的方向,我会在B部分遇到麻烦

wordlist = ['hat' ,'bat' ,'cat','dog','bird','bear','lion','tiger','frog','mouse']
这听起来像你的家庭作业。请确保逐行仔细阅读,并理解其工作原理

例如,如果我们省略元音中的字符,会发生什么?
i%3==0
是什么意思?如果我们改为尝试
i%3==1
会得到什么

为什么使用
string.lower()
很重要?

这可能会帮助您:

wordlist = ['hat', 'bat', 'cat', 'dog', 'bird', 'bear', 'lion', 'tiger', 'frog', 'mouse']

if len(wordlist) < 10:
    print("Error. list length must be grater than 10")
    exit(-1)
found = False
for word in wordlist[::3]:
    count = sum(map(word.lower().count, "aeiou"))
    if count >= 3:
        print('Found string with 3 or more vowels!')
        found = True
        break
    print("The string %s contains %d vowel(s)" % (word, count))
if not found:
    print("Did not find suitable string.")
wordlist=[“帽子”、“蝙蝠”、“猫”、“狗”、“鸟”、“熊”、“狮子”、“老虎”、“青蛙”、“老鼠”]
如果len(字表)<10:
打印(“错误。列表长度必须大于10”)
出口(-1)
发现=错误
对于单词列表中的单词[::3]:
count=sum(映射(word.lower().count,“aeiou”))
如果计数>=3:
print('找到包含3个或更多元音的字符串!')
找到=真
打破
打印(“字符串%s包含%d个元音)”%(单词,计数))
如果未找到:
打印(“未找到合适的字符串”)

首先,这看起来很像是家庭作业问题之类的。这就是说,这里不是寻求家庭作业帮助的地方,相反,你应该问一些关于一般算法或策略的问题。也许不是,所以这里有一个一般性的建议

我不认为它有一个具体的例子,但可能会有所帮助。要获取列表的每n个索引(从0开始),可以执行列表[0::n]。这将返回一个新列表,其中包含原始列表的第n个条目


从这里开始,计算每个元音是非常基本的字符串操作和/或列表比较。请告诉我们您尝试了什么,我们可以提供更具体的反馈,但这可能是您应该使用的。

您尝试了哪些代码?因此,我们为您做了准备,您甚至可以在自己不尝试的情况下获得100%的回报?但是你怎样才能通过考试呢?试着打印(['没有找到合适的字符串','find string with 3个或更多元音!'][any([[uuu.for.[uu.in.[uu.in.[uuu.if.[uu.in“aeiou]”),打印({}有{>}个元音)。[格式([uuuu,len([[uu])for>.in.[uuu.[uuu.]if.[uu.[uu.]in“aeiou]中])]。。。或者你可能想在复习完之后再回答你的问题。我怀疑OP是否有时间阅读这篇文章。他甚至没有自由地重新组织他的问题。
for i in range(0,len(wordlist),3):word=wordlist[i]
可以用
for wordlist[::3]:
替换。
wordlist = ['hat', 'bat', 'cat', 'dog', 'bird', 'bear', 'lion', 'tiger', 'frog', 'mouse']

if len(wordlist) < 10:
    print("Error. list length must be grater than 10")
    exit(-1)
found = False
for word in wordlist[::3]:
    count = sum(map(word.lower().count, "aeiou"))
    if count >= 3:
        print('Found string with 3 or more vowels!')
        found = True
        break
    print("The string %s contains %d vowel(s)" % (word, count))
if not found:
    print("Did not find suitable string.")