小编典典

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

python

这是来自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}

阅读 212

收藏
2020-12-20

共1个答案

小编典典

在2.7+中:

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

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

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