我試圖從Python中的嵌套列表中刪除項目。我有一個嵌套列表如下:從嵌套列表中刪除項目Python
families = [[0, 1, 2],[0, 1, 2, 3],[0, 1, 2, 3, 4],[1, 2, 3, 4, 5],[2, 3, 4, 5, 6]]
我想刪除在每個子列表是coorespond到主列表中的子表的索引位置的條目。所以,例如,我需要從第一個子列表中刪除0,從第二個子列表中刪除1,等等。我試圖使用列表解析來做到這一點。這是我曾嘗試:
familiesNew = [ [ families[i][j] for j in families[i] if i !=j ] for i in range(len(families)) ]
本工程爲range(len(families))
最多3個,但除此之外,我得到IndexError: list index out of range
。我不知道爲什麼。有人可以給我一個如何做到這一點的想法。最好是單行(列表理解)。
謝謝。
謝謝,我決定去與最後的選擇,因爲它事實上是可以的,需要更改到位名單。 – johntfoster 2012-03-25 02:51:38