无法导入随机python

时间:2017-07-26 01:50:41

标签: python macos python-2.7

我在python

中导入random和randint时遇到问题

这是我从“随机导入randint”

时得到的错误
Traceback (most recent call last):
  File "/Users/Noah/Desktop/math.py", line 2, in <module>
    from random import randint
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.py", line 45, in <module>
    from math import log as _log, exp as _exp, pi as _pi, e as _e, ceil as _ceil
  File "/Users/Noah/Desktop/math.py", line 2, in <module>
    from random import randint
ImportError: cannot import name randint

这是我在“导入随机”

时得到的错误
Traceback (most recent call last):
  File "/Users/Noah/Desktop/math.py", line 2, in <module>
    import random
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.py", line 45, in <module>
    from math import log as _log, exp as _exp, pi as _pi, e as _e, ceil as _ceil
TypeError: 'module' object is not callable

当我去/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7检查文件时,它有random.py random.pyc和random.pyo

python正在使用它作为路径

>>> print random.__file__
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.pyc

编辑:我不知道会发生什么

3 个答案:

答案 0 :(得分:3)

回溯相对清晰:

  • 您尝试从randint;
  • 导入random
  • 在python random模块中,它尝试从math;
  • 导入名称
  • 不幸的是,您选择在工作目录math中命名一个自己的模块,因此它首先找到;
  • 导入您的 math时,它会尝试导入random ...现在您有一个循环导入...但它失败了。

结论:

在Python 2中,不要将您的模块命名为与核心python模块相同的...

答案 1 :(得分:0)

在同一文件夹中,您有一个名为 math.py 的文件。您应该删除此文件,这就是它不起作用的原因。 我的建议是您可以删除该文件夹中的所有内容。

答案 2 :(得分:-1)

您应该随机保存一些文件名,以便代码打开该文件,因此请尝试更改该文件名