[Python]统计数列中元素出现的次数并进行排序


题目是:现有数列l1 = ['d', 'f', 'g', 'f', 'e', 'z', 'f', 'a', 'a'] 。请把数列中的元素按照进行排序,并输出次数,重复最多的元素排在前面,程序越简单越好

方法1:

1 from collections import Counter
2 # 根据数列中字母出现的次数和ASCII的大小,进行排序。
3 l1 = ['d', 'f', 'g', 'f', 'e', 'z', 'f', 'a', 'a'] 
4 d2 = Counter(l1)
5 sorted_x = sorted(d2.items(), key=lambda x: x[1], reverse=True)

方法2:

l1 = ['d', 'f', 'g', 'f', 'e', 'z', 'f', 'a', 'a']
set01 = set(l1)
dict01 = {item: l1.count(item) for item in set01}
sorted_x = sorted(dict01.items(), key=lambda x: x[1], reverse=True)
print(sorted_x)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM