【问题标题】:Same for_loop code, print different results the second time run相同的 for_loop 代码,第二次运行打印不同的结果
【发布时间】: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 引起的。

标签: python for-loop


【解决方案1】:

你需要在外面定义循环变量x

x=5
for i in range (x):
    print(i)
0
1
2
3
4

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-18
    • 1970-01-01
    • 2014-09-28
    • 1970-01-01
    • 2023-02-06
    • 2020-03-07
    相关资源
    最近更新 更多