python实战|python 2-4 如何根据字典中K/V排序 sorted(d.items(),key=lambda item:item[1],reverse=True)

2-4 如何根据字典中值的大小,对字典中的项排序 sorted(dict2.iteritems(),key=lambda item:item[1],reverse=True) 【python实战|python 2-4 如何根据字典中K/V排序 sorted(d.items(),key=lambda item:item[1],reverse=True)】使用内置函数sorted
1.利用zip将字典数据转换成为元组
print sorted(zip(dict2.itervalues(),dict2.iterkeys()),reverse=True)
2.传递sorted函数的key参数
sorted(dict2.iteritems(),key=lambda x:x[1],reverse=True)
3.可以重新获得已经排序的字典
dict(sorted(dict2.iteritems(),key=lambda x:x[1],reverse=True))
方法一:

import random dict2 = {k:random.randint(-100,100) for k in xrange(340,350)} print dict2 print sorted(zip(dict2.itervalues(),dict2.iterkeys()),reverse=True)

方法二:
import random dict2 = {k:random.randint(-100,100) for k in xrange(340,350)} print sorted(dict2.iteritems(),key=lambda item:item[1],reverse=True)newdict2 = dict(sorted(dict2.iteritems(),key=lambda item:item[1],reverse=True)) print newdict2

help(sorted)
>>> help(sorted) Help on built-in function sorted in module __builtin__:sorted(...) sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list>>> >>> >>> >>> dir(sorted) ['__call__', '__class__', '__cmp__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__self__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__'] >>>

    推荐阅读