【发布时间】:2019-08-09 14:07:04
【问题描述】:
我的 python 代码在 spyder 中运行,但是在 cmd 中运行时出错:
C:\Users\XYZ\AppData\Local\Continuum\anaconda3>python.exe "C:\\Users\\XYZ\\project_1\\Model\\PPP_2_main.py"
Traceback (most recent call last):
File "C:\\Users\\XYZ\\project_1\\Model\\PPP_2_main.py", line 8,
in <module>
import numpy as np
File "C:\Users\XYZ\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\__init__.py", line 140, in <module>
from . import _distributor_init
File "C:\Users\XYZ\AppData\Local\Continuum\anaconda3\lib\site-packages\numpy\_distributor_init.py", line 34, in <module>
from . import _mklinit
ImportError: DLL load failed: The specified module could not be found.
我读了this,它说python找不到模块,我们需要添加系统路径。但是错误消息不是提到了 numpy 库的正确路径吗?
确认库路径正确(在sypder中):
import numpy
numpy.__file__
Out[5]: 'C:\\Users\\XYZ\\AppData\\Local\\Continuum\\anaconda3\\lib\\site-packages\\numpy\\__init__.py'
检查 conda 环境:
(base) C:\Users\XYZ>conda env list
# conda environments:
#
base * C:\Users\XYZ\AppData\Local\Continuum\anaconda3
基本环境的路径是我在cmd中运行代码时所在的位置
我阅读了this 并尝试激活 conda,但没有成功。在 conda cmd 中:
(base) C:\Users\zhayuji>conda activate base
(base) C:\Users\zhayuji\AppData\Local\Continuum\anaconda3>conda activate base
(base) C:\Users\zhayuji\AppData\Local\Continuum\anaconda3>conda list
# packages in environment at C:\Users\zhayuji\AppData\Local\Continuum\anaconda3:
#
# Name Version Build Channel
_ipyw_jlab_nb_ext_conf 0.1.0 py37_0
_py-xgboost-mutex 2.0 cpu_0
alabaster 0.7.12 py37_0
anaconda-client 1.7.2 py37_0
anaconda-navigator 1.9.7 py37_0 anaconda
....
numpy 1.16.2 py37h19fb1c0_0
numpy-base 1.16.2 py37hc3f5095_0
numpydoc 0.9.1 py_0
在此之后我重新打开cmd并运行python代码,它与帖子开头的错误相同。
【问题讨论】:
-
您必须设置 conda 环境。尝试运行
conda env list并查看您拥有哪些 conda 环境 -
@LeBronJames 谢谢你!基本路径就是我运行代码的地方。这是否意味着环境应该全部设置?
-
是的,这意味着你的 numpy 应该安装在你的基础环境中,如果你做对了,尝试在你的 conda 提示符
activate base中运行,然后运行 pip list和conda list看看你是否查看你的 numpy 包 -
感谢@LeBronJames。我做了激活和 conda list 显示 numpy。但是还是有错误...
标签: python module path environment