sorted的常见用法:
sorted([4,7,2,9,1])
Out[68]:
[1, 2, 4, 7, 9]
{ x:randint(60,100) for x in 'xyzabc'}
Out[69]:
{'a': 75, 'b': 66, 'c': 93, 'x': 73, 'y': 71, 'z': 72}
d = { x:randint(60,100) for x in 'xyzabc'}
sorted(d)
Out[71]:
['a', 'b', 'c', 'x', 'y', 'z']
#sorted默认对字典的键排序,并丢弃值
##使用zip函数将字典数据转化成元组
d.keys()
Out[74]:
dict_keys(['x', 'y', 'z', 'a', 'b', 'c'])
d.values()
Out[75]:
dict_values([75, 71, 89, 90, 69, 98])
sorted(zip(d.values(),d.keys()))
Out[79]:
[(69, 'b'), (71, 'y'), (75, 'x'), (89, 'z'), (90, 'a'), (98, 'c')]
2 / 传递sorted函数的key参数
lambda匿名函数是指拿index[1]的元素作为sorted的key,然后sorted依据这个key进行排序
d.items()
Out[81]:
dict_items([('x', 75), ('y', 71), ('z', 89), ('a', 90), ('b', 69), ('c', 98)])
sorted(d.items(),key = lambda x : x[1])
Out[82]:
[('b', 69), ('y', 71), ('x', 75), ('z', 89), ('a', 90), ('c', 98)]