我想知道如何按嵌套列表中的名称字符串按字母顺序对分数列表进行排序,然后按照从最高到最低的值对嵌套列表中的分数进行排序:
例如:
list=[['a', 9, 3], ['we', 2], ['will', 2, 10], ['x', 4], ['z', 4]]
我尝试使用.sort()
和sorted()
以及lambda
,但我完全不理解。
预期输出为:
[['a', 9, 3],['we', 2],['will', 10, 2],['x',4],['z', 4]]
答案 0 :(得分:0)
嗯,在你的情况下,你想要在没有第一个元素的情况下对内部列表进行排序。您可以使用切片运算符来获取此子列表,也可以替换它:
mylist=[['a', 9, 3], ['we', 2], ['will', 2, 10], ['x', 4], ['z', 4]]
for sublist in mylist:
sublist[1:] = sorted(sublist[1:], reverse=True)
请注意,最好不要为列表list
命名,因为它也是该类型的名称。