首页 > 解决方案 > ImportError:DLL 加载失败 sklearn 或 scipy

问题描述

好的,我在 GitHub 和 Stackoverflow 上看到了至少 8 个版本的问题,但没有解决方案。此外,它似乎比过去更晚出现(参见最后的参考资料)

当我尝试简单导入 Sklearn 时,我不断收到“导入错误:DLL 加载失败”

import scipy
# works
import sklearn
# crashes
import scipy.linalg
# crashes
print(sklearn.__version__)

完整的错误输出:

Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\sklearn\__init__.py", line 80, in <module>
    from .base import clone
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\sklearn\base.py", line 21, in <module>
    from .utils import _IS_32BIT
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\sklearn\utils\__init__.py", line 27, in <module>
    from .fixes import np_version
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\sklearn\utils\fixes.py", line 18, in <module>
    import scipy.stats
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\scipy\stats\__init__.py", line 384, in <module>
    from .stats import *
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\scipy\stats\stats.py", line 179, in <module>
    from scipy.spatial.distance import cdist
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\scipy\spatial\__init__.py", line 102, in <module>
    from ._procrustes import procrustes
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\scipy\spatial\_procrustes.py", line 11, in <module>
    from scipy.linalg import orthogonal_procrustes
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\scipy\linalg\__init__.py", line 195, in <module>
    from .misc import *
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\scipy\linalg\misc.py", line 5, in <module>
    from .blas import get_blas_funcs
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Users\Sam\Documents\thesiscode\venv\lib\site-packages\scipy\linalg\blas.py", line 215, in <module>
    from scipy.linalg import _fblas
  File "C:\Program Files\JetBrains\PyCharm 2020.1\plugins\python\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
ImportError: DLL load failed: The specified module could not be found.

我知道这是指这是一个 SciPy 问题,但我无法终生修复它。我已经阅读了几乎所有问题,但没有解决办法。我努力了:

我已经尝试了更多与包、路径和安装相关的东西,但 DLL 加载错误仍然存​​在。如何解决此错误?有谁知道这是什么原因?从网上看,它似乎与 Windows 10、PyCharm 和 SciPy 直接相关

环境信息:

这是所有问题和 GitHub sklearn 家伙谈论它的链接,但他们说这是一个“使用错误”。这些都没有给我任何解决方案

导入 scikit-learn 模块时出错

https://github.com/scikit-learn/scikit-learn/issues/15899

sklearn。ImportError:DLL 加载失败

从 SciPY 导入某些模块时出现 ImportError

ImportError:DLL 加载失败,使用 import sklearn

标签: pythondllscikit-learnscipy

解决方案


似乎这是一个 Windows、PyCharm 和 Sklearn 组合问题。我切换到运行 Pycharm 和 Sklearn 的 Linux VM,它运行良好。


推荐阅读