[英]Sort in descending order python
我想按位置降序排序。 鑒於:
name = ["Shawn", "Patrick", "Nancy", "Viola"]
position = [3,1,4,2]
l =[name,positions]
l.sort(key=lambda x: x[1])
將l = [name, positions]
更改為l = list(zip(name,position))
:
>>> name = ["Shawn", "Patrick", "Nancy", "Viola"]
>>> position = [3,1,4,2]
>>> l = list(zip(name,position))
>>> l.sort(key=lambda x: -x[1])
>>> l
[('Nancy', 4), ('Shawn', 3), ('Viola', 2), ('Patrick', 1)]
還要注意修改后的降序排序鍵。
zip
將相應位置的項目配對。 (這將產生一個可迭代對象,因此要么轉換為列表,要么使用sorted
而不是.sort
。)-x[1]
作為鍵,或傳遞reverse=True
。position
變量。l
作為變量名,因為它可能與1
和I
混淆。name = ["Shawn", "Patrick", "Nancy", "Viola"]
position = [3, 1, 4, 2]
l = zip(name, position)
l = sorted(l, key=lambda x: x[1], reverse=True)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.