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

发布于 2021-01-29 19:31:45

这是来自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}
关注者
0
被浏览
47
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    在2.7+中:

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

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

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


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看