为什么在循环遍历数字列表然后弹出循环所在的当前变量时会出现此错误?

运行一些代码时出现此错误。


Traceback (most recent call last):

  File "C:/Users/jakus/PycharmProjects/practice/Practice.py", line 16, in <module>

    x = x_values.pop(x)

IndexError: pop index out of range

这是代码。


x_values = [1, 2, 3, 4, 5]

y_values = [6, 7, 8, 9, 10]


for x in x_values:

    x = x_values.pop(x)

    x == x**2

    x_values.append(x)


for y in y_values:

    y = y_values.pop(y)

    y == y**2

    y_values.append(y)


print(y_values)

print(x_values)

如果 pop 索引当前正在我的 for 循环中处理同一个变量,我不确定它是如何超出范围的。如果能提供任何帮助,我将不胜感激。


RISEBY
浏览 106回答 1
1回答

梵蒂冈之花

在遍历列表时不要修改列表的大小。你应该在这里做的是列表理解。x_values&nbsp;=&nbsp;[x**2&nbsp;for&nbsp;x&nbsp;in&nbsp;x_values]顺便说一句,你有一个错字,==而不是=.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python