sorted(iterable,key,reverse)
参数解释:
1)iterable:一个可以迭代的对象,通常为d.items()或者d.keys(),前者代表返回的列表元素里键和值都存在,而后者返回的列表元素中则只有键;
2)key:一个函数,用来选取参与比较的元素,这里一般采用lambda e:e[0]形式,这是代表按键排序,若改为e[1],则表示按值排序;
3)reverse:若为True,则按降序排;否则为升序(默认值为False;
举例可以看以下代码:
dic={'go':31,'meet':8,'forward':1,'death':63,'become':2,'sue':8}
value_ascend=sorted(dic.items(),key=lambda e:e[1])#按值升序排列
value_descend=sorted(dic.items(),key=lambda e:e[1],reverse=True)#按值降序排列
key_ascend=sorted(dic.items(),key=lambda e:e[0])#按键升序排列
key_ascend_1=sorted(dic.keys())#按键升序排列,但返回值里面只包含键值
key_descend=sorted(dic.items(),key=lambda e:e[0],reverse=True)#按值降序排列
结果依次如下:
1)[('forward', 1), ('become', 2), ('meet', 8), ('sue', 8), ('go', 31), ('death', 63)]
2)[('death', 63), ('go', 31), ('meet', 8), ('sue', 8), ('become', 2), ('forward', 1)]
3)[('become', 2), ('death', 63), ('forward', 1), ('go', 31), ('meet', 8), ('sue', 8)]
4)['become', 'death', 'forward', 'go', 'meet', 'sue']
5)[('sue', 8), ('meet', 8), ('go', 31), ('forward', 1), ('death', 63), ('become', 2)]