dll 加载问题的原因很可能是一个非常不同的原因。最新的 Anaconda 版本(例如 Anaconda 5.0.1)具有支持 MKL 的 Numpy。这不是问题。我通过使用 conda list 查看已安装的软件包来验证这一点。问题是 cvxopt 需要一些 dll,这些 dll 在目录中
C:\Anaconda3\envs\foo\Library\mingw-w64\bin
如果您安装 Anaconda 并且不在系统路径上注册 Anaconda python(无论如何这是他们建议的设置),然后使用 Anaconda 提示设置新环境(注意当前版本的 cvxopt 您需要 Python 3.5)
conda create -n foo python=3.5
activate foo
conda install cvxopt
并导入 cvxopt
(foo) C:\tmp>python
Python 3.5.4 |Anaconda, Inc.| (default, Nov 8 2017, 14:34:30) [MSC v.1900
64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import cvxopt
>>>
一切都应该正常工作。如果您检查 Anaconda 相关的路径设置,您会发现
C:\Anaconda3\envs\foo;
C:\Anaconda3\envs\foo\Library\mingw-w64\bin;
C:\Anaconda3\envs\foo\Library\usr\bin;
C:\Anaconda3\envs\foo\Library\bin;
C:\Anaconda3\envs\foo\Scripts;
如果你现在从路径中删除 C:\Anaconda3\envs\foo\Library\mingw-w64\bin 你又回到了问题
C:\tmp>python
Python 3.5.4 |Anaconda, Inc.| (default, Nov 8 2017, 14:34:30) [MSC v.1900
64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import cvxopt
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Anaconda3\envs\tf14\lib\site-packages\cvxopt\__init__.py", line 32, in <module>
import cvxopt.base
ImportError: DLL load failed: The specified module could not be found.
>>>
但是还有另一个与 PyCharm 相关的问题:如何在 PyCharm 中正确使用 Anaconda envs?PyCharm 无法处理环境所需的其他路径。至少不是开箱即用,或者我没有找到正确的方法。欢迎任何建议。