我已经通过 conda 安装了 python,创建了一个新环境,安装了 PyCharm 并将其配置为使用此环境。
当我在 PyCharm 中启动 python 控制台时,我会看到
C:\Users\9973879\AppData\Local\Continuum\miniconda3\envs\foo\lib\site-packages\IPython\core\history.py:226: UserWarning: IPython History requires SQLite, your history will not be saved
事实上,如果我尝试导入 sqlite3
,我会得到
ImportError: DLL load failed: The specified module could not be found.
但是Project Interpreters > Interpreter Paths
确实列出了C:\Users\9973879\AppData\Local\Continuum\miniconda3\envs\foo\{DLLs, Lib, site-packages}
。此外,从命令行启动的 python 解释器导入此包(在同一个虚拟环境中)会成功。
编辑
问题似乎出在 PATH
环境变量上。当调用 conda activate foo
时,conda
会向 PATH
添加一堆文件夹,其中包含各种库(特别是 sqlite3.dll
)。
当指向现有环境(或创建新环境)时,PyCharm 会自动向 PYTHONPATH
添加文件夹,如前所述,但似乎不会向 PATH 添加任何内容
.
我通过在调用 conda activate foo
后从命令行运行 PyCharm 来测试这个假设,并且它有效。当然,必须从特定的 conda 环境启动 PyCharm 并不好,因为我被困在这个特定的环境中。
如何将 PyCharm 配置为像 conda activate
那样自动更新环境?难道不应该直接开箱即用吗?
最佳答案
我通过添加 DLL 解决了该问题到我的 < path_to_environment >/DLLs 位置
关于python - PyCharm 中的 "ImportError: DLL load failed"和 conda : how to automatically import conda's PATH?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54766467/