2015-11-19 85 views
0

joinedlist = [['B', 'C', 'A'], ['D', 'C', 'F'], ['E', 'E', 'D'], ['C', 'C', 'E'], ['A', 'D', 'D']]根據嵌套列表

排序列表,我想根據第一列表排序的第一個嵌套循環

['A', 'B', 'C']

所以剩餘的嵌套循環的順序依次排序(3,1,2),所以我得到這樣的輸出:

回答

1

這將做的工作:

zip(*sorted(zip(*joinedlist))) 

zip(*joinedlist)使得匹配從內列出元素的元組的列表:

[('B', 'D', 'E', 'C', 'A'), ('C', 'C', 'E', 'C', 'D'), ('A', 'F', 'D', 'E', 'D')] 

這然後得到由列表的主導元件,其是從所述第一原始子列表中的元素進行排序,使得對應每個元素都作爲一個組來移動。

最後,我們採取這一結果,並重新壓縮它,把事情像以前一樣打散,但現在正確排序。