python对Counter内容进行排序

对Counter中的内容进行排序

1
2
3
4
5
6
7
8
9
10
11
12
13
from collections import Counter

x = Counter({'a':5, 'b':3, 'c':7})

# 1
x.most_common() # [('c', 7), ('a', 5), ('b', 3)]

# 2
sorted(x, key=x.get, reverse=True) # ['c', 'a', 'b']

# 3
sorted(x.items(), key=lambda pair: pair[1], reverse=True) # [('c', 7), ('a', 5), ('b', 3)]

一共三种方法,其中第二种方法中传入key=x.get最终返回的是所有的key,而其他两种方法返回的都是排完序之后的list