好的,所以我有一个包含多个列表的列表。
列表的格式如下:
list1 = [["Value1",1],["Value2",3],["Value3",2]]
我想按第二个值对内部列表进行排序,以便我可以按顺序打印它们,如Value1,Value3,Value2。
任何有关如何做到这一点的帮助将不胜感激。提前谢谢!
答案 0 :(得分: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]]
答案 1 :(得分:3)
如何使用lambda:
>>> list1 = [["Value1",1],["Value2",3],["Value3",2]]
>>>
>>> list1.sort(key=lambda x: x[1])
>>> list1
[['Value1', 1], ['Value3', 2], ['Value2', 3]]
>>>