我试图从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