为了解决这个问题,我试图遍历 python 中的坐标对列表,并删除其中一个坐标为负的所有情况。例如:
在数组中:
map = [[-1, 2], [5, -3], [2, 3], [1, -1], [7, 1]]
Run Code Online (Sandbox Code Playgroud)
我想删除其中任一坐标 < 0 的所有对,留下:
map = [[2, 3], [7, 1]]
Run Code Online (Sandbox Code Playgroud)
我的问题是 python 列表不能有任何间隙,所以如果我这样循环:
i = 0
for pair in map:
for coord in pair:
if coord < 0:
del map[i]
i += 1
Run Code Online (Sandbox Code Playgroud)
当元素被删除时,所有的索引都会发生变化,扰乱迭代并导致各种问题。我尝试将坏元素的索引存储在另一个列表中,然后循环遍历并删除这些元素,但我遇到了同样的问题:一旦一个元素消失,整个列表就会发生变化,索引不再准确。
有什么我想念的吗?
谢谢。