在Python中可以使用sorted函数对list进行排序,但是如果排序的对象是一个包含tuple的list时,sorted函数会使用tuple的第一个元素。
如果想要使用tuple的第二个元素进行排序,可以向sorted函数传入一个key参数,key参数必须是一个函数,输入是list的一个元素,输出最好是一个数字或简单的字符。
构造这样一个函数可以使用匿名函数lambda,示例代码如下:
1
2
3
|
myList
=
[(
'dungeon'
,
7
),(
'winterfell'
,
4
),(
'bran'
,
9
),(
'meelo'
,
6
)]
print
sorted
(myList, key
=
lambda
x:x[
1
])
# [('winterfell', 4), ('meelo', 6), ('dungeon', 7), ('bran', 9)]
|