python的sorted函数对字典按value进行排序


场景:词频统计时候,我们往往要对频率进行排序

sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数。
其中iterable表示可以迭代的对象,例如可以是dict.items()、dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reverse=true则是倒序,reverse=false时则是顺序,默认时reverse=false。

已知:

>>> a = {"tuffy":2, "spike":10, "tom":8, "tyke":3, "jerry":7 }

>>> print a.items()  #使用items()或者iteritems()先将字典转换为二元组的列表

>>> [('tom', 8), ('spike', 10), ('tyke', 3), ('jerry', 7), ('tuffy', 2)]

>>> from operator import itemgetter

>>>c = sorted(a.items(),key=itemgetter(1))

>>>print c

>>>[('tuffy', 2), ('tyke', 3), ('jerry', 7), ('tom', 8), ('spike', 10)]

 


免责声明!

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



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