对字符串和整数的列表进行排序

0 投票
2 回答
1403 浏览
提问于 2025-04-18 01:13

好的,我有一个包含多个列表的列表。

这个列表的格式是这样的:

list1 = [["Value1",1],["Value2",3],["Value3",2]]

我想按照每个内部列表的第二个值来排序,这样我就可以按顺序打印出来,比如说 Value1、Value3、Value2。

如果有人能帮我实现这个,我会非常感激。提前谢谢大家!

2 个回答

3

你可以使用 sorted() 函数配合 itemgetter() 来进行排序:

>>> from operator import itemgetter
>>> list1 = [["Value1",1],["Value2",3],["Value3",2]]
>>> sorted(list1, key=itemgetter(1))
[['Value1', 1], ['Value3', 2], ['Value2', 3]]
3

可以试试用lambda表达式:

>>> list1 = [["Value1",1],["Value2",3],["Value3",2]]
>>>
>>> list1.sort(key=lambda x: x[1])
>>> list1
[['Value1', 1], ['Value3', 2], ['Value2', 3]]
>>>

撰写回答