【发布时间】:2016-10-11 10:05:24
【问题描述】:
我有两个列表,我想在 Python 中循环查找匹配项并删除它们。 第一个叫SavedWordData,长度为2156,第二个叫listReturned,长度为1000。
然后我尝试这样做:
maxLenReturned = len(listReturned)
maxLenSaved = len(savedWordData)
for i in range(maxLenSaved):
for x in range(maxLenReturned):
if savedWordData[i] == listReturned[x]:
savedWordData.pop(i)
但是当我这样做时,我收到一条错误消息,上面写着: IndexError:列表索引超出范围 这表明我超出了某些列表的范围,但我不明白为什么以及哪些列表超出了它的范围?
【问题讨论】:
-
如果你在一个列表上调用 pop(),它会减小它的大小。因此它引发了异常。
-
@GurupadMamadapur 嗯,好吧。我怎样才能在不做流行音乐的情况下实现我想做的同样的事情?我应该创建一个新的临时列表来存储所有不匹配的数据吗?
标签: python-3.x for-loop iteration