在 Python For 循环中删除列表元素
使用 for 循环迭代列表时,无法直接删除元素在该循环内。尝试这样做将导致错误,如下例所示:
a = ["a", "b", "c", "d", "e"] for item in a: print(item) a.remove(item) # This will cause an error
替代方法
要有效删除循环中的列表元素,请考虑以下方法之一以下方法:
while a: print(a.pop())
result = [] for item in a: if condition is False: # Replace condition with your own criteria result.append(item) a = result
a = filter(lambda item:... , a) # Replace ... with your condition
a = [item for item in a if ...] # Replace ... with your condition
有条件删除
如果您希望根据特定条件删除项目,请遵循以下准则:
以上是如何在迭代时安全地从 Python 列表中删除元素?的详细内容。更多信息请关注PHP中文网其他相关文章!