从命令行导入 Python 模块有效,但不能从 PyCharm

Kar*_*rus 9 python command-line environment-variables bashrc pycharm

我的默认 Python 二进制文件设置为 Python 的 Anaconda 发行版。这是在发现/home/karnivaurus/anaconda/bin/python,并通过添加到我的我也本作的默认.bashrc文件如下:export PATH=/home/karnivaurus/anaconda/bin:$PATH

我还有一个名为 的 Python 包caffe,它位于/home/karnivaurus/caffe/distribute/python,我已通过将.bashrc以下内容添加到我的文件中将其添加到包搜索路径中:export PYTHONPATH=${PYTHONPATH}:/home/karnivaurus/caffe/distribute/python.

现在,我有一个名为 的简单 Python 文件test.py,其中包含以下内容:

import caffe
print "Done."
Run Code Online (Sandbox Code Playgroud)

如果我通过进入python test.py终端来运行它,它运行良好,打印出“完成。”。我遇到的问题是当我在 PyCharm IDE 中运行它时。在 PyCharm 中,我将解释器设置为/home/karnivaurus/anaconda/bin/python. 但是当我test.py在 PyCharm 中打开并在 IDE 中运行该文件时,出现以下错误:

ImportError: No module named caffe
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:为什么PyCharmcaffe在运行Python脚本的时候找不到模块,而我从终端运行脚本的时候却可以找到?

谢谢!

Jav*_*era 11

正如 ByteCommander 在评论中所说,PyCharm 不使用 bashrc,因此它不知道您的库在哪里。

在添加解释器的同一屏幕中,您可以看到一个滚轮图标,单击它,它将显示一个菜单,单击更多。你应该看到这样的屏幕:

PyCharm 解释器配置

您应该选择您的解释器并单击最后一个按钮。这应该打开这个窗口:

解释器路径配置

现在单击加号图标,您应该能够为库添加自己的路径。

  • 这是一个很好的例子,说明为什么使用命令行比 GUI 更容易给出指令。 (2认同)

Mih*_*otă 5

从 Ubuntu 启动器启动的程序不会读取.bashrc. 作为在 PyCharm 中设置路径的替代方法,您可以简单地从 Bash shell 启动 PyCharm,以使其访问您在 中设置的环境变量.bashrc