对字符串和整数的列表进行排序
好的,我有一个包含多个列表的列表。
这个列表的格式是这样的:
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]]
>>>