假设我在这里有这个 list :
list = [a, b, c, d, e, f, g]
如何同时删除索引 2、3、4
和 5
?
pop 不接受多个值。我该怎么做?
最佳答案
您需要循环执行此操作,没有内置操作可以一次删除多个索引。
您的示例实际上是一个连续的索引序列,因此您可以这样做:
del my_list[2:6]
删除从 2 开始并在 6 之前结束的切片。
从您的问题中不清楚您是否需要删除任意索引集合,或者它是否始终是一个连续的序列。
如果您有任意索引集合,则:
indexes = [2, 3, 5]
for index in sorted(indexes, reverse=True):
del my_list[index]
注意,你需要以相反的顺序删除它们,这样你就不会丢掉后面的索引。
关于python - 如何同时从列表中删除多个索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11303225/