我在python中生成了一些大型列表,我需要弄清楚从这样的事情返回排序列表的绝对最快方法:
myList = ['a','b','c','a','c','a']
并根据项目的数量以降序返回它的列表,所以它看起来像这样。
sortedList = ['a','c','b']
我一直在使用Counter()。most_common(),但是这会以项目的降序返回一个元组,并且列表中会出现次数。我真的只需要一个基于计数的降序的元组或列表,只有项目,而不是计数金额。有什么想法吗?
编辑: 那么做这样的事情会更快吗?
myList = ['a','b','c','a','c','a']
count = Counter(myList).most_common()
res = [k for k,v in count]
答案 0 :(得分:5)
from collections import Counter
myList = ['a','b','c','a','c','a']
res = [k for k,v in Counter(myList).most_common()]
# ['a', 'c', 'b']