python 字典获取最大和最小的value
my_dict = {'x':500, 'y':5874, 'z': 560}
key_max = max(my_dict.keys(), key=(lambda k: my_dict[k]))
key_min = min(my_dict.keys(), key=(lambda k: my_dict[k]))
print('Maximum Value: ',my_dict[key_max])
print('Minimum Value: ',my_dict[key_min])
可以用max(dict,key=dict.get)方法获得字典dict中value的最大值所对应的键的方法,max(dict, key)方法首先遍历迭代器,并将返回值作为参数传递给key对应的函数,然后将函数的执行结果传给key,并以此时key值为标准进行大小判断,返回最大值
sorted函数使用
a=[1,2,3]
sorted(a)
#[1, 2, 3]
L=[('b',2),('a',1),('c',3),('d',4)]
sorted(L, key=lambda x:x[1])
#
Out[127]:
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
from operator import itemgetter, attrgetter
L=[('b',2,2),('a',1,1),('c',3,3),('d',4,4),('e',4,3)]
print(sorted(L, key=lambda x:(x[1],x[2]) ))
#[('a', 1, 1), ('b', 2, 2), ('c', 3, 3), ('e', 4, 3), ('d', 4, 4)]
sorted(L, key=itemgetter(1,2))
#
Out[132]:
[('a', 1, 1), ('b', 2, 2), ('c', 3, 3), ('e', 4, 3), ('d', 4, 4)]