python中的list元组如何按照第二维元素排序

 我来答
日TimE寸
推荐于2017-09-06 · TA获得超过9568个赞
知道大有可为答主
回答量:1358
采纳率:83%
帮助的人:482万
展开全部

在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)]
生活导师上官姐姐

2020-11-13 · TA获得超过3.4万个赞
知道大有可为答主
回答量:3.2万
采纳率:98%
帮助的人:885万
展开全部
在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
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友29d79c26e1
推荐于2017-09-29 · TA获得超过665个赞
知道小有建树答主
回答量:150
采纳率:0%
帮助的人:97.1万
展开全部
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')]
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式