[問題] 二維 list 排序

作者: obelisk0114 (追風箏的孩子)   2015-12-21 23:50:46
假設我有一個二維 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 後面有記錄一些訊息, 所以排序後希望保持順序
作者: tiefblau (tiefblau)   2015-12-22 00:41:00
https://gist.github.com/yen-von/73f03b4b82c0d2dfe00b排序索引值 有興趣可以研究一下sort裡key的用法
作者: bibo9901 (function(){})()   2015-12-22 01:34:00
list(map(list,zip(*sorted(zip(*a),key=lambda x:x[1]))))
作者: Yshuan (倚絃)   2015-12-29 13:34:00
換個結構 dict of list, key是['a'..'g'],d['a']=[7,'三']
作者: kimutaka (保持對生命的熱情)   2015-12-31 06:45:00
先感謝各位的分享, 但樓上Y大的說明還沒看懂><

Links booklink

Contact Us: admin [ a t ] ucptt.com