Python:没有.字符串中每个字符的出现次数

Jay*_*hik 0 python string collections

可能重复:
如何使用python获取每个字符的出现次数

获取字符串中每个字符的计数并存储它的最佳方法是什么(我正在使用字典 - 这个选择能产生很大的不同吗?)?我想到的几种方式:

1.

for character in string:
    if character in characterCountsDict:
        characterCountsDict[character] += 1
    else:
        characterCountsDict[character] = 1
Run Code Online (Sandbox Code Playgroud)

2.

character = 0
while character < 127:
    characterCountsDict[str(unichr(character))] = string.count(str(unichr(character))
    character += 1
Run Code Online (Sandbox Code Playgroud)

我认为第二种方法更好......但它们中哪一方好?有没有更好的方法来做到这一点?

def*_*fuz 10

>>> from collections import Counter
>>> Counter("asdasdff")
Counter({'a': 2, 's': 2, 'd': 2, 'f': 2})
Run Code Online (Sandbox Code Playgroud)

请注意,您可以Counter像dict一样使用对象.