Skip to main content
 首页 » 编程设计

python之从列表中删除索引列表

2025年05月04日17grandyang

所以当我想从列表中删除一系列索引时我遇到了麻烦

    for i in linked_node: 
        del l[i] 

linked_node是索引序列 这段代码根本行不通,因为 del 改变了列表的大小

使用 for 循环,我可以通过将它们附加到一个新列表来做到这一点

  l1 = []       
  for i in range(len(l)): 
     if i is not in linked_node: 
         l1.append(l[]) 

我的问题是,如何以优雅的方式做到这一点?无需创建另一个列表

请您参考如下方法:

改用列表理解:

>>> l = ['hi', 'hello', 'hey', 'hai'] 
>>> indexes = {1, 2} 
>>> [j for i, j in enumerate(l) if i not in indexes] 
['hi', 'hai']