Pycharm中的DLL导入错误,但在外面工作正常

问题描述 投票:1回答:2

我在Windows机器上安装了新的Anaconda和PyCharm。

简单地跑

import numpy

加薪

ImportError: DLL load failed: The specified module could not be found.

在类似的问题(12)中,人们建议检查PATH是否有DLL的路径。就我而言 - 确实如此!但是,当我从PyCharm开始做某事时,我有额外的路径前置于PATH。我认为这可能是问题所在。

当从Anaconda提示运行时,sys.path是:

C:\Users\usr\Anaconda3\python37.zip
C:\Users\usr\Anaconda3\DLLs
C:\Users\usr\Anaconda3\lib
C:\Users\usr\Anaconda3
C:\Users\usr\Anaconda3\lib\site-packages
C:\Users\usr\Anaconda3\lib\site-packages\win32
C:\Users\usr\Anaconda3\lib\site-packages\win32\lib
C:\Users\usr\Anaconda3\lib\site-packages\Pythonwin

当在pycharm中从python控制台运行时,sys.path是相同的,除了现在我们在文件的开头有两个附加行:

C:\Users\usr\AppData\Local\JetBrains\Toolbox\apps\PyCharm-C\ch-0\182.4505.26\helpers\pydev
C:\Users\usr\AppData\Local\JetBrains\Toolbox\apps\PyCharm-C\ch-0\182.4505.26\helpers\pydev

顺便说一下,C:\Users\usr\AppData\Local\JetBrains\Toolbox\apps\PyCharm-C\ch-0\182.4505.26\helpers\pydev\_pydev_bundle\pydev_import_hook.py提出了初始错误。 所以我认为这找到了问题,但我不知道它为什么会出现,为什么它不会发生在我的其他机器上,更重要的是,如何修复它?


技术数据:

PyCharm 2018.2.4 (Community Edition)
Build #PC-182.4505.26, built on September 19, 2018
JRE: 1.8.0_152-release-1248-b8 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

Windows 10 10.0

Python: 3.7, 3.6.6;

numpy: 1.15.4; 1.14.6
python pycharm python-import
2个回答
1
投票

这是一个开放的bug;来自Jetbrains问题跟踪器的This answer暂时为我解决了这个问题。

  • 打开命令行
  • 激活conda venv
  • 通过echo%PATH%获取正确的PATH值
  • 打开PyCharm并设置新的PATH值 用于设置中的Python控制台|构建,执行,部署|控制台| Python控制台|环境变量 在Run |中运行脚本编辑配置... | |环境变量

UPD:错误修复于2019.1


0
投票

最后我从pydev找到的是这个解决方法,它就像pycharm,但是从eclipse IDE中作为插件:

“作为一个注释,现在解决方法可以从该shell启动Eclipse,转到相关的解释器并添加'PATH'环境变量以匹配预期运行conda的环境变量(您可以强制特定解释器的环境变量) )“。 Link

对于pycharm,这可能以相同的方式完成,即。从正确的环境中启动pycharm,并显式设置路径变量。

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