我有两个列表 - lista = [1,2,3,5,0,5,6,0] listb = [4,7]
listb 包含索引号。如何从列表中删除索引 4 和 7(包含在 lisb 中)。
因此,我想将 new_lista 打印为 [1,2,3,5,5,6]
我希望这是有道理的。
阿尔维娜
我有两个列表 - lista = [1,2,3,5,0,5,6,0] listb = [4,7]
listb 包含索引号。如何从列表中删除索引 4 和 7(包含在 lisb 中)。
因此,我想将 new_lista 打印为 [1,2,3,5,5,6]
我希望这是有道理的。
阿尔维娜
您可以尝试关注。
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)
使用enumerate
:
new_lista = [j for i, j in enumerate(lista) if i not in listb]