作者sean72 (.)
看板Python
標題[問題] python 3 sort key
時間Sat Nov 11 10:28:46 2017
data包含 n 個 itm
data = [[7, 1], [4, 4], [7, 0], [5, 0], [6, 1], [5, 2]]
排列方式:
按照itm[0]大的先放
如果itm[0]一樣,那麼itm[1]小的先放
所以上面排完的順序應該是
[[7, 0], [7, 1], [6, 1], [5, 0], [5, 2], [4, 4]]
python2寫法
sorted(people, key = lambda (h,k): (-h,k))
python3請問該怎麼寫?
sorted(people, key = lambda x:-x[0])
sorted(people, key = itemgetter(0, 1), reverse = True)
這兩種方法排出來會變成
[[7, 1], [7, 0], [6, 1], [5, 2], [5, 0], [4, 4]]
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 8.41.187.50
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1510367329.A.612.html
→ bibo9901: 一樣啊? key=lambda x:(-x[0], x[1]) 11/11 10:42
→ sean72: 阿 謝謝樓上 我腦筋沒轉過來 11/12 02:50