作者obelisk0114 (追風箏的孩子)
看板Python
標題[問題] 二維 list 排序
時間Mon Dec 21 23:50:46 2015
假設我有一個二維 list
a = [[2,5,7,9],['g','b','a','d'],['一','二','三','武']
我想讓 a 依據 ['g','b','a','d'] 的 unicode 來排序,
並同時跟著移動 [2,5,7,9] 和 ['一','二','三','武'] 的內部順序
最後得到排序後的結果
sort_a = [[7,5,9,2],['a','b','d','g'],['三','二','武','一']]
要如何做 ?
因為二維 list 後面有記錄一些訊息, 所以排序後希望保持順序
--
肝不好 ▁▁ ● ◤
肝若好
人生是黑白的 ▏ ◤
考卷是空白的
▏ ◤
、 ﹐
● ●b 囧 ▎ ●> ● ◤
▌ ﹍﹍ 0 ▊囧>
幹...
▲ ■┘ ■ ▎ ■ █◤ ▌ ㄏ▋ ︶■
〈﹀ ∥ ▁▁∥ ▎ ﹀〉◤
▋ ▊ 〈\
ψcockroach727
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.232.118
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1450713054.A.791.html
→ tiefblau: 排序索引值 有興趣可以研究一下sort裡key的用法 12/22 00:43
→ bibo9901: list(map(list,zip(*sorted(zip(*a),key=lambda x:x[1]) 12/22 01:34
→ bibo9901: ))) 12/22 01:34
推 Yshuan: 換個結構 dict of list, key是['a'..'g'],d['a']=[7,'三'] 12/29 13:34
推 kimutaka: 先感謝各位的分享, 但樓上Y大的說明還沒看懂>< 12/31 06:45