list 遍历过程中删除元素
时间: 2023-08-06 09:05:04 浏览: 106
C#遍历List并删除某个元素的方法
在遍历列表时,如果要删除元素,应该使用迭代器而不是直接删除。具体来说,可以使用 `list.remove()` 方法删除元素,并且在使用前需要将迭代器保存下来,以便在删除元素后能够正确地继续遍历。示例如下:
```python
my_list = [1, 2, 3, 4, 5]
it = iter(my_list)
for x in it:
if x % 2 == 0:
my_list.remove(x)
print(my_list)
```
在上述示例中,使用迭代器 `it` 遍历列表 `my_list`,并且如果发现元素为偶数,就使用 `my_list.remove(x)` 方法删除该元素。需要注意的是,在删除元素后,迭代器 `it` 仍然能够正确地遍历剩余元素。最后输出的结果为 `[1, 3, 5]`。
阅读全文