0

我正在尝试使用几个模块运行一个过去有效的 python 脚本。一些谷歌搜索建议循环依赖,但是这仅与导入相互依赖的模块的两个文件相关。

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

我的 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
4

1 回答 1

0

事实证明,解决方案是经典的卸载重装作业。这些软件包似乎与最近的 Windows 更新或软件包本身的更新不兼容。修复步骤(以防万一):

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

2)打开命令提示符 (cmd) 并运行 conda (command: conda)。然后运行命令conda install numpyconda install matplotlib. 对显示的任何选项单击是 [y]。当然,这些命令取决于给您带来麻烦的库。

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

注意:您可能需要在 Anaconda Navigator 的 conda 环境中卸载有问题的库。为此,请选择您的 conda 环境(我的称为qutip)并删除麻烦的包。他们是matplotlibnumpy在这种情况下。

于 2017-05-11T14:14:20.470 回答