4

我使用了文档中的示例:

>>> Counter('abracadabra').most_common(3)
[('a', 5), ('r', 2), ('b', 2)]

我怎样才能使结果为:

{ 'a': 5, 'r' :2 , 'b' :2}

假设我们要保留Counter().most_common()代码?

4

2 回答 2

6

dict很容易做到这一点:

>>> dict(Counter('abracadabra').most_common(3))
{'a': 5, 'r': 2, 'b': 2}
>>>

为了进一步参考,这里是返回的部分内容help(dict)

     dict(iterable) -> new dictionary initialized as if via:
 |      d = {}
 |      for k, v in iterable:
 |          d[k] = v
于 2013-10-28T00:34:19.653 回答
5

最简单的方法是简单地使用dict()

dict(Counter('abracadabra').most_common(3))

输出:

{'a': 5, 'r': 2, 'b': 2}
于 2013-10-28T00:34:07.827 回答