【问题标题】:DLL load failed: The specified module could not be found while importing scipyDLL 加载失败:导入 scipy 时找不到指定的模块
【发布时间】:2023-03-05 08:54:01
【问题描述】:

我已经在 Windows 10 上安装了带有 Anaconda 的 python。我已经使用 Anaconda 创建了一个名为 venv 的虚拟环境。激活环境后,>>>python 给出:

Python 3.6.8 |Anaconda, Inc.| (default, Feb 11 2019, 15:03:47) [MSC v.1915 64 bit (AMD64)] on win32

我已经使用 pip:pip install scipy 在我的venv 中安装了scipy

我已经将pycharm中的解释器设置为venvpython解释器。

现在,我在 pycharm 的一个新模块中尝试了以下操作:

import scipy    # No error here
from scipy.stats import norm # Here I got the error

错误:

Traceback (most recent call last):
  File "C:/Users/user/Documents/February2019/AVEC2018/ApplyPCA.py", line 11, in <module>
    from scipy.optimize import _hungarian
  File "C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\lib\site-packages\scipy\optimize\__init__.py", line 386, in <module>
    from .optimize import *
  File "C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\lib\site-packages\scipy\optimize\optimize.py", line 37, in <module>
    from .linesearch import (line_search_wolfe1, line_search_wolfe2,
  File "C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\lib\site-packages\scipy\optimize\linesearch.py", line 18, in <module>
    from scipy.optimize import minpack2
ImportError: DLL load failed: The specified module could not be found.

我已按照说明here 尝试解决问题。

因此,我在 cmd 中使用venv python 解释器时运行了print(os.environ['PATH'])(即在激活venv 之后);我复制了以下结果

C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv;C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\Library\mingw-w64\bin;C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\Library\usr\bin;C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\Library\bin;C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\Scripts;C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp;C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\MATLAB\R2017a\runtime\win64;C:\Program Files\MATLAB\R2017a\bin;C:\Users\user\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Git\cmd;C:\cuda7\cuda\bin;C:\Program Files\Weka-3-8;C:\Users\user\Downloads\ffmpeg-20170904-6cadbb1-win64-static\bin;C:\Program Files\Java\jdk1.8.0_144\bin;C:\Program Files\Java\jre1.8.0_144\bin;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Users\user\Downloads\pandoc-2.1.2;C:\Users\user\AppData\Local\Continuum\anaconda3\Scripts;C:\Users\user\AppData\Local\Continuum\anaconda3;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\user\AppData\Local\Programs\MiKTeX 2.9\miktex\bin\x64;C:\Users\user\Downloads\cmake-3.11.2-win64-x64\bin;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\CUPTI\libx64;C:\Program Files\NVIDIA Corporation\NVSMI;C:\Users\user\AppData\Local\Microsoft\WindowsApps;C:\Cloud SDK\google-cloud-sdk\bin;C:\altera\13.0\modelsim_ase\win32aloem;C:\Program Files\Microsoft VS Code\bin;C:\Users\user\AppData\Local\Programs\MiKTeX 2.9\miktex\bin\x64\;C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv\lib\site-packages\numpy\.libs

并将其粘贴到 运行/调试配置python 控制台 中的新变量中:

但这并没有解决问题。请注意,我尝试使用conda install scipy 安装scipy,但问题并未解决。最后,从 cmd 工作时不会出现问题,但在从 python 控制台(在 pycharm 内部)和 pycharm 工作时确实存在。

我发现在 pycharm 内的 python 控制台中运行 print(os.environ['PATH']) 给了我以下信息:

C:\Users\iayou005\AppData\Local\Continuum\anaconda3\envs\venv\Library\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp;C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\MATLAB\R2017a\runtime\win64;C:\Program Files\MATLAB\R2017a\bin;C:\Users\iayou005\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Git\cmd;C:\cuda7\cuda\bin;C:\Program Files\Weka-3-8;C:\Users\iayou005\Downloads\ffmpeg-20170904-6cadbb1-win64-static\bin;C:\Program Files\Java\jdk1.8.0_144\bin;C:\Program Files\Java\jre1.8.0_144\bin;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Users\iayou005\Downloads\pandoc-2.1.2;C:\Users\iayou005\AppData\Local\Continuum\anaconda3\Scripts;C:\Users\iayou005\AppData\Local\Continuum\anaconda3;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\iayou005\AppData\Local\Programs\MiKTeX 2.9\miktex\bin\x64;C:\Users\iayou005\Downloads\cmake-3.11.2-win64-x64\bin;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\CUPTI\libx64;C:\Program Files\NVIDIA Corporation\NVSMI;C:\Users\iayou005\AppData\Local\Microsoft\WindowsApps;C:\Cloud SDK\google-cloud-sdk\bin;C:\altera\13.0\modelsim_ase\win32aloem;C:\Program Files\Microsoft VS Code\bin;C:\Users\iayou005\AppData\Local\Programs\MiKTeX 2.9\miktex\bin\x64\;

因此,缺少以下2条路径:

C:/Users/user/AppData/Local/Continuum/anaconda3/envs/venv;C:/Users/user/AppData/Local/Continuum/anaconda3/envs/venv/Scripts;

鉴于上述所有尝试,我不知道如何解决此问题

非常感谢任何帮助!

【问题讨论】:

  • PyCharmm 有一个“环境设置”。确保您没有从环境中选择可执行文件,而是选择了实际的 conda 环境。据我了解,如果设置正确,PyCharmm 可以理解 conda 环境的要求。
  • 另外,你的环境叫venv,是这样吗?这非常令人困惑,请根据特定需要命名,因为这会使您的错误日志难以阅读。示例:“default-env”,只是“default”已经比“venv”更好。 “project1”、“py36”等
  • @PierredeBuyl,感谢您的 cmets,但是是的,不幸的是,我选择了 venv 作为我的虚拟环境名称。至于选择的解释器,我选择了为我的venv 指定的现有解释器,它的路径:C:\Users\user\AppData\Local\Continuum\anaconda3\envs\venv。希望这会有所帮助!
  • 我使用的是 linux,所以不是所有的都适用。在设置解释器时,有一个类别“conda 环境”。设置是“conda 可执行文件”(“conda”程序的完整路径)和位置(环境的位置)。您应该使用它并删除所有自定义环境变量。

标签: python scipy importerror


【解决方案1】:

您似乎在配置对话框中放错了环境变量的名称及其值。

应该是PATH=list_of_paths,而不是list_of_paths=PATH

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-21
    • 2020-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-22
    • 2022-12-10
    • 2020-07-01
    相关资源
    最近更新 更多