2017-02-08 252 views
3

我有一個二維表像這樣:按字母順序排列2D列表?

lst = [['c', 'd', 'b'], ['d', 'c', 'a'], ['b', 'a', 'c']] 

我想首先到列表中的每個列表按字母順序排序是這樣的:

lst = [['b', 'c', 'd'], ['a', 'c', 'd'], ['a', 'b', 'c']] 

最後,我想對整個排序按照字母順序列表,其中考慮到子列表中的每個元素:

lst = [['a', 'b', 'c'], ['a', 'c', 'd'], ['b', 'c', 'd']] 

什麼是最快的方法來實現這個目標?謝謝。

回答

7

一般最快的方法應該是,就像你描述的那樣:

for sublist in lst: 
    sublist.sort() 

lst.sort() 

另外,如果你想這樣做出來的地方:

new_lst = [sorted(sublist) for sublist in lst] 
new_lst.sort() 
+0

也'new_lst =排序(圖( '排序,lst))'。但是,似乎我的電腦上的列表理解速度更快 –