假設我有一個列表:lst = [[5,1,2,3],[2,3,4,5,7],[1,10,9,8,7]]我還有另一個列表,其中包含要從上一個列表中刪除的元素的索引:indexes_to_del = [[0,2],[1,2],[1,3],[2,2]]因此,我們得到以下列表:new_lst = [[5,1,3],[2,3,7],[1,10,8,7]]最有效的方法是什么?我最初的感覺是使用del不是最有效的方法,我必須找到一些方法來創建一個新列表并將所需的值附加到它。謝謝!
1 回答

烙印99
TA貢獻1829條經驗 獲得超13個贊
以下是使用嵌套列表理解實現此目的的一種可能方法:
new_lst = [[e for j, e in enumerate(lst[i]) if [i, j] not in indexes_to_del] for i in range(len(lst))]
輸出:
[[5, 1, 3], [2, 3, 7], [1, 10, 8, 7]]
添加回答
舉報
0/150
提交
取消