Python - ImportError:无法导入名称X.

时间:2017-05-10 12:56:21

标签: python windows numpy anaconda qutip

我正在尝试使用一些模块来运行一个曾经有效的python脚本。一些谷歌搜索建议循环依赖,但这只与导入彼此依赖的模块的两个文件相关。

似乎归结为scalarmath没有找到,但我不知道为什么。我的代码只是简单的函数defs用于计算,然后调用这些函数(所有在一个文件中)。

我的IDE的输出是:

C:\Users\sg15\AppData\Local\Continuum\Anaconda2\python.exe "P:/Solid State QT/NSMM/simulations/InteractionsOfTLF.py"
Traceback (most recent call last):
  File "P:/Solid State QT/NSMM/simulations/InteractionsOfTLF.py", line 13, in <module>
    import matplotlib.pyplot as plt
  File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\matplotlib\__init__.py", line 122, in <module>
    from matplotlib.cbook import is_string_like, mplDeprecation, dedent, get_label
  File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\matplotlib\cbook.py", line 33, in <module>
    import numpy as np
  File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\__init__.py", line 185, in <module>
    from . import add_newdocs
  File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
    from numpy.lib import add_newdoc
  File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
    from .type_check import *
  File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
    import numpy.core.numeric as _nx
  File "C:\Users\sg15\AppData\Local\Continuum\Anaconda2\lib\site-packages\numpy\core\__init__.py", line 20, in <module>
    from . import scalarmath
ImportError: cannot import name scalarmath

Process finished with exit code 1

1 个答案:

答案 0 :(得分:0)

事实证明该解决方案是一个经典的卸载重新安装作业。似乎这些软件包与最近的Windows更新或软件包本身的更新不兼容。修复步骤(如果您需要):

1)在单独的程序中运行python,并尝试导入库例如 import numpy。您仍应在问题中显示的图像中看到输出错误消息。这表明它不是我们代码的本地问题。关闭那个python程序/控制台/无论如何。

2)打开命令提示符(cmd)并运行conda(命令:conda)。然后运行命令conda install numpyconda install matplotlib。单击是[y]以显示任何选项。当然,这些命令取决于哪些库导致您遇到麻烦。

3)在python IDE的控制台中,再次导入库 import numpyimport matplotlib。运行你的代码,它应该建立得很好(假设你没有其他错误)

注意:您可能必须卸载有问题的库,这会让您在Anaconda Navigator中的conda环境中遇到麻烦。为此,请选择您的conda环境(我的名为qutip)并删除麻烦的软件包。在这种情况下,它们是matplotlibnumpy