items=list(counts.items())#[('a',1),('b',2)...]
items.sort(key=lambda x:x[1],reverse=True)#降序
使用python对列表(list)进行排序
python3排序 sorted(key=lambda)
key=lambda 元素: 元素[字段索引]
例如:想对元素第二个字段排序,则
key=lambda y: y[1]
备注:这里y可以是任意字母,
等同key=lambda x: x[1]
看几个简单的例子。
listA = [3, 6, 1, 0, 10, 8, 9]#列表
print(sorted(listA))#[0, 1, 3, 6, 8, 9, 10]#默认升序_从小到大
listB = ['g', 'e', 't', 'b', 'a']
print(sorted(listB))#['a', 'b', 'e', 'g', 't']
print(sorted(listB, key=lambda y: y[0]))#['a', 'b', 'e', 'g', 't']
listC = [('e', 4), ('o', 2), ('!', 5), ('v', 3), ('l', 1)]
#由元组构成的列表
print(sorted(listC, key=lambda x: x[1]))
#[('l', 1), ('o', 2), ('v', 3), ('e', 4), ('!', 5)]
我们还可以使用reverse参数实现倒序排列
1、max(num, key=lambda x:x[0])语法介绍如下:
key=lambda 元素: 元素[字段索引]
print(max(C, key=lambda x: x[0]))
x:x[]字母可以随意修改,
求最大值方式按照中括号[]里面的维度,
[0]按照第一维,[1]按照第二维。
2、具体代码用法及输出结果如下:
2.1、取第1位元素
num = [(1,2.5), (1.5, 3.2), (1.3, 4.0), (2.2, 1.8)]
y,z = max(num, key=lambda x:x[0])
print(y, z)
相当于找4组坐标的第1个数的最大值,显然为2.2,因此结果如下:
2.1、取第2位元素
num = [(1,2.5), (1.5, 3.2), (1.3, 4.0), (2.2, 1.8)]
y,z = max(num, key=lambda x:x[1])
print(y, z)
相当于找4组坐标的第2个数的最大值,显然为4.0,
因此结果如下: