python中的list元组如何按照第二维元素排序
3个回答
展开全部
在Python中可以使用sorted函数对list进行排序,但是如果排序的对象是一个包含tuple的list时,sorted函数会使用tuple的第一个元素。
如果想要使用tuple的第二个元素进行排序,可以向sorted函数传入一个key参数,key参数必须是一个函数,输入是list的一个元素,输出最好是一个数字或简单的字符。
构造这样一个函数可以使用匿名函数lambda,示例代码如下:
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)]
展开全部
在Python中可以使用sorted函数对list进行排序,但是如果排序的对象是一个包含tuple的list时,sorted函数会使用tuple的第一个元素。如果想要使用tuple的第二个元素进行排序,可以向sorted函数传入一个key参数,key参数必须是一个函数,输入是list的一个元素,输出最好是一个数字或简单的字符。
构造这样一个函数可以使用匿名函数lambda,示例代码如下:
listA = [('a', 1), ('c', 3), ('d', 4), ('b', 2)]
sorted(listA, key=lambda x:x[1])
输出结果为:
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
对List进行排序,Python提供了两个方法
方法1.用List的内建函数list.sort进行排序
list.sort(func=None, key=None, reverse=False)
Python实例:
list = [2,5,8,9,3]
list
[2,5,8,9,3]
list.sort()
list
[2, 3, 5, 8, 9]
方法2.用序列类型函数sorted(list)进行排序
Python实例:
list = [2,5,8,9,3]
list
构造这样一个函数可以使用匿名函数lambda,示例代码如下:
listA = [('a', 1), ('c', 3), ('d', 4), ('b', 2)]
sorted(listA, key=lambda x:x[1])
输出结果为:
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
对List进行排序,Python提供了两个方法
方法1.用List的内建函数list.sort进行排序
list.sort(func=None, key=None, reverse=False)
Python实例:
list = [2,5,8,9,3]
list
[2,5,8,9,3]
list.sort()
list
[2, 3, 5, 8, 9]
方法2.用序列类型函数sorted(list)进行排序
Python实例:
list = [2,5,8,9,3]
list
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
In [1]: a=((1,'c'),(4,'d'),(2,'b'),(3,'a'))
In [2]: sorted(a,key=lambda x:x[1])
Out[2]: [(3, 'a'), (2, 'b'), (1, 'c'), (4, 'd')]
In [3]: sorted(a)
Out[3]: [(1, 'c'), (2, 'b'), (3, 'a'), (4, 'd')]
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询