0

我有两个列表 - lista = [1,2,3,5,0,5,6,0] listb = [4,7]

listb 包含索引号。如何从列表中删除索引 4 和 7(包含在 lisb 中)。

因此,我想将 new_lista 打印为 [1,2,3,5,5,6]

我希望这是有道理的。

阿尔维娜

4

2 回答 2

1

您可以尝试关注。

for x in sorted(listb,reverse=True): lista.pop(x)

此外,您可能需要确保 listb 不包含重复索引并且所有索引号都是有效索引。

for x in sorted(set([y for y in listb if -1 < y < len(lista)]),reverse=True): lista.pop(x)
于 2013-02-20T17:33:24.040 回答
0

使用enumerate

new_lista = [j for i, j in enumerate(lista) if i not in listb]
于 2013-02-20T09:45:00.513 回答