我有一份清單 ff = [('o', 2), ('l', 1), ('e', 1), ('g', 2)] 我想以這樣一種方式對它進行排序,按數字降序排序,如果任何元素有相同的數字,則按字母表升序排序,如下圖所示 ff = [('g', 2), ('o', 2), ('e', 1), ('l', 1)]
可以將sorted與參數key一起使用: ff = [('o', 2), ('l', 1), ('e', 1), ('g', 2)] output = sorted(ff, key=lambda x: (-x[1], x[0])) print(output) # [('g', 2), ('o', 2), ('e', 1), ('l', 1)] 當一個元組被給定為key時,sorted按字典順序對列表排序。在這種情況下,它首先按降序(-x[1])根據第二個元素排序,然后按升序(x[0])根據第一個元素排序。
可以將
sorted
與參數key
一起使用:當一個元組被給定為
key
時,sorted
按字典順序對列表排序。在這種情況下,它首先按降序(-x[1]
)根據第二個元素排序,然后按升序(x[0]
)根據第一個元素排序。