【发布时间】:2019-03-27 07:33:42
【问题描述】:
这是我的代码:
for i in range (x):
print(i)
x=5
我在 Windows 10 平台上使用 Spyder 3.3.2。当我使用上面编写的代码尝试 for 循环时,我发现了一个有趣的问题。 我第一次点击它打印的绿色运行文件(F5)按钮:
0
1
2
3
但我第二次运行它打印的文件:
0
1
2
3
4
有人能解释一下发生了什么吗?谢谢!
【问题讨论】:
-
我想邀请您认真思考一下您的代码。你在什么时候为
range(x)定义x -
你显然已经在循环之前的某个地方定义了
x=4,然后你运行了循环,其中 x 被定义为x=5并且你的输出发生了变化 -
谢谢 Vulpex。我删除了所有变量并再次尝试。它只是给出了一个错误: NameError: name 'x' is not defined。我认为这可能是由以前使用的变量 X 引起的。