无法在PyCharm中加载DLL python模块。在IPython中工作正常

问题描述 投票:5回答:7

当我使用Enthought Python Distribution附带的IPython时,我可以很好地导入pyvision包。但是,当我尝试在PyCharm 1.2.1中导入pyvision时,我收到以下错误

  File "C:\Python27\lib\site-packages\pyvision\__init__.py", line 146, in <module>
    from pyvision.types.img import Image,OpenCVToNumpy,NumpyToOpenCV
  File "C:\Python27\lib\site-packages\pyvision\types\img.py", line 43, in <module>
    import numpy
  File "C:\Python27\lib\site-packages\numpy\__init__.py", line 142, in <module>
    import add_newdocs
  File "C:\Python27\lib\site-packages\numpy\add_newdocs.py", line 9, in <module>
    from numpy.lib import add_newdoc
  File "C:\Python27\lib\site-packages\numpy\lib\__init__.py", line 13, in <module>
    from polynomial import *
  File "C:\Python27\lib\site-packages\numpy\lib\polynomial.py", line 17, in <module>
    from numpy.linalg import eigvals, lstsq
  File "C:\Python27\lib\site-packages\numpy\linalg\__init__.py", line 48, in <module>
    from linalg import *
  File "C:\Python27\lib\site-packages\numpy\linalg\linalg.py", line 23, in <module>
    from numpy.linalg import lapack_lite
ImportError: DLL load failed: The specified module could not be found.

我在Windows中错过了一些路径设置吗?

python import numpy ipython pycharm
7个回答
4
投票

我有同样的问题。我正在使用Winpython32并尝试import win32com。到处工作(我试过),除了PyCharm。 sys.pathos.environ['PYTHONPATH']在Pycharm中有一些额外的条目,但与在其他地方运行时相比没有任何遗漏。

解决方案是在Winpython控制台中启动Pycharm而不使用快捷方式。

sys.pathos.environ['PYTHONPATH']没有改变。 os.environ['PATH']有几个额外的条目设置,都与python安装有关。此时我怀疑它与“非标准”安装有关。 Winpython32尝试“可移植”,而其他类似问题的报告是在使用Enthought或Python(x,y)时。

手动添加:

 C:\WinPython-32\python-2.7.6\
 C:\WinPython-32\python-2.7.6\DLLs
 C:\WinPython-32\python-2.7.6\Scripts

到系统路径(Windows中的全局PATH环境变量)解决了问题,而无需在Winpython命令行中运行Pycharm。注意:单独的C:\WinPython-32\python-2.7.6\Scripts没有解决它。


1
投票

我之前遇到过这个问题,似乎通过修复Enthought来解决问题。

编辑:我刚刚检查过,我的一个f2py项目仍然存在这个确切的错误。修复Enthought不起作用。我的问题的解决方案实际上在于修复Windows路径变量。您需要确保c:\ Python27 \ Scripts(或您的等效文件)在路径中。此外,这非常重要,请确保全局和用户路径环境变量中的每个条目都没有尾部斜杠。这打破了Windows上的GNU make实用程序。


1
投票

添加到PATH环境变量

C:\Python27
C:\Python27\DLLs
C:\Python27\Scripts

1
投票

这是PyCharm中一个非常令人沮丧的错误。即使你从PyCharm中设置了virtualenv,“python console”默认为系统python。当您安装PyCharm时,可能是您在64位计算机上使用了win32 python。

转到file>settings>Build, Execution, Deployment>Console>Python Console并将Python Interpreter从系统版本更改为virtualenv。

当然,PyCharm不会立即刷新它。您必须关闭项目并重新打开它。

要验证这是否成功,请打开Python控制台(Tools>Python Console)并检查输出的第一行:它应该指向虚拟环境的python.exe,而不是系统python。


0
投票

我有同样的问题(与另一个包),我不想修改Windows路径。我可以在pycharm控制台中非常粗略地解决它,通过创建一个python脚本来更新文件-settings-console-pathon console中的sys.path和os.environ ['PATH'] - 启动脚本。它仅在我使用时工作“ tools- python shell“

它仍然不适用于运行选项。我甚至尝试创建一个虚拟环境,添加到activate.bat的路径,但是在pycharm中它不起作用(从命令提示符开始)(如virtualenv that can find relocated libraires (like mysqlclient lib for MySQLdb)中所建议的)我明确地设置了python解释器选项中的路径但是它不起作用。(如https://stackoverflow.com/a/24206781/1136458所示)


0
投票

enter image description here我找不到链接,但我保存了这张照片 - 希望能为你效劳


0
投票

我很抱歉我的解释很长并且可能不是最清晰的,但这是我能用来描述我的经验的最好方法。

我在第一次安装后遇到了同样的问题,这就是我解决它的方法:

我注意到有一些设置,如其他答案所示,告诉pyCharm使用哪些解释器和环境管理员,我确定问题在于设置这些选项,但我不确定如何,所以我开始搜索。

Setting interpreter

我或多或少地遵循了标准教程,假设在某些时候我会在我的项目文件夹中使用新创建的virtualenv。我最初得到DLL错误,但我确保interpreter设置指向有效的可执行文件。

Here解释了如何做到这一点。

Setting environment

此时错误消失了,但我已朝着新的错误前进了。此时的问题是我无法导入任何模块,因为找不到它们。这是因为我在新创建的virtualenv中工作,基本上是原始安装,没有安装模块。我相信有更多的演进解决方案(在virtualenv中安装模块),但我只是想让代码工作,所以我设置环境使用我的anaconda通常的开发环境。

对我来说,在Windows上使用conda(在用conda activate激活开发环境之后)然后(参见其他系统的..../anaconda-python-where-are-the-virtual-environments-stored)。 where python给出了解释器的路径conda info --envs给了我想要使用的现有环境。

这为我修好了一切。

© www.soinside.com 2019 - 2024. All rights reserved.