2016-11-09 17 views
-1

我有類似這樣如何充分刪除的子列表是在列表

numbers=[['3','4','5'],['',''],['6','7','8'] 

名單,我想徹底刪除

['',''] 

子列表因此最終的號碼列表應該看看像

numbers=[['3','4','5'],['6','7','8']] 

香港專業教育學院試圖用

numbers[index].remove('') 

但是那只是給了我一個列表索引超出範圍錯誤

+0

'德爾號[指數]'的? – jonrsharpe

+0

可能的重複[如何通過Python中的索引從列表中刪除元素?](http://stackoverflow.com/questions/627435/how-to-remove-an-element-from-a-list-by- index-in-python) – jonrsharpe

+0

謝謝你的鏈接。從未使用del命令或.pop命令。 –

回答

0
In [73]: L = [['3','4','5'],['',''],['6','7','8']] 

In [74]: dels = [] 

In [75]: for i,sub in enumerate(L): 
    ....:  if all(e=='' for e in sub): 
    ....:   dels.append(i) 
    ....:   

In [76]: for i in dels[::-1]: 
    ....:  L.pop(i) 
    ....:  

In [77]: L 
Out[77]: [['3', '4', '5'], ['6', '7', '8']]