我有一个嵌套列表的列表:
e = [['Tina', 37.2], ['Harsh', 39], ['Harry', 37.21], ['Berry', 37.21], ['Akriti', 41]]
您如何按数值排序,而名称却“跟随”“等级”? 我可以使用dict,但我认为这没有意义。
答案 0 :(得分:1)
e.sort(key=lambda item: item[1])
答案 1 :(得分:1)
您可以使用自定义键对列表进行排序:
result = sorted(e, key = lambda x : x[1])
答案 2 :(得分:0)
在您的示例中,Harry和Berry具有相同的值。
如果您希望按姓名对领带进行排序,那么已经得到的答案的变体将是这样的:
e = [['Tina', 37.2], ['Harsh', 39], ['Harry', 37.21], ['Berry', 37.21], ['Akriti', 41]]
e.sort(key=lambda x:(x[1], x[0]))
print(e)
#[['Tina', 37.2], ['Berry', 37.21], ['Harry', 37.21], ['Harsh', 39], ['Akriti', 41]]