【问题标题】:Import `random` affecting for loop [closed]导入影响for循环的“随机”[关闭]
【发布时间】:2019-07-01 13:35:59
【问题描述】:

我想用 for 循环打印数字 1 到 10,但 import random 正在影响我的 for 循环并且循环运行了两次。这是screenshot of my editor。输出如下所示。你能解释一下为什么会这样吗?

import random
for i in range(1,10):
    print(i)

我的输出:

1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9

【问题讨论】:

  • 无法重现问题 - 与 OP 完全相同,结果正常。
  • 很确定你调用了你自己的脚本random.py。现在它正在导入自己。
  • 我也无法重现这一点。你确定你不是不小心运行了你的程序两次吗?
  • 不需要随机导入。正如 h4z3 提到的,我无法重现该问题。如果你想打印 10,你的范围应该是 (1,11)。
  • 我同意马蒂亚斯的观点

标签: python random import


【解决方案1】:

这永远不会发生。

确保您运行的是最新版本的程序,并确保您没有将相同的代码粘贴到同一文件的其他位置。例如确保您没有它的预编译版本。 (例如,更改文件名并重试)。

更新:

根据 matthias 的评论,如果您将文件保存为 random.py,则可以复制上述结果。

# if you save the code below as random.py
import random
for i in range(1,10):
    print(i)



# your output could be reproduced as below.
>>> python random.py

 1
 2
 3
 4
 5
 6
 7
 8
 9
 1
 2
 3
 4
 5
 6
 7
 8
 9

解决方案:更改文件名,或者如果您必须导入它,请确保在 random.py 的 for 循环之前包含代码 if __name__ == "__main__"

【讨论】:

    【解决方案2】:

    11我没有发现任何问题,我做了示例并且效果很好。

    我的输出: 1 2 3 4 5 6 7 8 9

    可能是您调用了该文件两次?这是我找到的唯一请求。

    【讨论】:

      猜你喜欢
      • 2017-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-20
      • 1970-01-01
      • 2021-01-17
      • 2021-10-12
      • 2012-08-28
      相关资源
      最近更新 更多