当前位置: 首页 > 面试题库 >

计算字符串中每个字母的频率

季凡
2023-03-14
问题内容

这是来自pyschools的问题。

我确实做对了,但我猜测会有一个更简单的方法。这是最简单的方法吗?

def countLetters(word):
    letterdict={}
    for letter in word:
        letterdict[letter] = 0
    for letter in word:
        letterdict[letter] += 1
    return letterdict

看起来应该像这样:

>>> countLetters('google')
{'e': 1, 'g': 2, 'l': 1, 'o': 2}

问题答案:

在2.7+中:

import collections
letters = collections.Counter('google')

较早的版本(2.5或更高版本,到目前为止):

import collections
letters = collections.defaultdict(int)
for letter in word:
    letters[letter] += 1


 类似资料:
  • 问题内容: 我正在做一个作业,在该作业中,我必须编写程序以读取用户的字符串,并打印出字符串中出现次数的字母。 例如,“ Hello world”应该打印出“ h = 1 e = 1 l = 3 o = 2 …等”,但是我只写“ hello world”和字母总数。 我不能使用hashmap函数,只能使用数组。有人可以给我一两个提示,提示如何从下面的书面代码继续进行操作以获得我的首选功能?我不完全了

  • 问题内容: 如何使用MySQL查询来计算大写字母?我现在正在尝试 但这给我一个错误的说法: 我猜,我不允许在AGAINST子句中使用列表,这很烂 那么,有没有办法实现这一目标? 问题答案: 试试这个功能- 例子:

  • 编写一个程序,当给定一个代表地毯的字符串时,输出其价格。示例:abacx答案:20(长度5乘以4种不同类型) 以下是我到目前为止的情况。以下是测试案例3a)qiraat 3b)cdefghijklmnopqrstuwxyz 3c)warrior 3d)SupercalibragilisticExpialidious

  • 问题内容: 这是我想要的行为: 问题答案: 我认为该示例将针对您的特定情况工作,而不会造成太多麻烦,也不会遇到python软件版本(请升级至2.7)的互操作性问题: 输出: 进行一些调整,您就可以得到想要的…。如果有帮助,请告诉我:-) 更新资料 您还可以使用以下命令: 输出: 更新2 您可以这样修改代码: 输出:

  • 问题内容: 我需要编写某种循环,可以计算字符串中每个字母的频率。 例如:“ aasjjikkk”将计为2’a’,1’s’,2’j’,1’i’,3’k’。最终,像这样的id最终以字符为键,而count为值的形式出现在地图中。有什么好主意怎么做? 问题答案: 你可以使用Java Map并将a映射到。然后,你可以遍历字符串中的字符,并检查是否已将它们添加到地图中(如果有),然后可以增加其值。 例如: 最