如何计算特定字符在列表中出现的次数?

新手上路,请多包涵

好的,这是一个列表:

 sentList = ['I am a dog', 'I am a cat', 'I am a house full of cards']

我希望能够计算用户输入的字母在整个列表中出现的总次数。

 userLetter = input('Enter a letter: ')

假设字母是“a”

我希望程序通过并计算“a”出现在列表中的次数。在这种情况下,列表中“a”的总数应为 8。

我已经尝试通过 for 循环使用 count 函数,但我不断得到我不知道如何解释的数字,也不知道如何格式化循环,或者我是否需要它。

我试过这个,但它不起作用。

 count = sentList.count(userLetter)

任何帮助将不胜感激,我找不到任何文档来计算列表中字母的所有出现次数。

原文由 Dakota Brown 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 604
2 个回答

你试过这样的事情吗?

 userLetter = input('Enter a letter: ')
sentList = ['I am a dog', 'I am a cat', 'I am a house full of cards']

letterCount = 0
for sentence in sentList:
    letterCount += sentence.count(userLetter)

print("Letter appears {} times".format(letterCount))

原文由 Joe Davy 发布,翻译遵循 CC BY-SA 3.0 许可协议

使用 sum() 内置函数将列表中每个字符串的计数相加:

 total = sum(s.count(userLetter) for s in sentList)

原文由 aghast 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题