【发布时间】:2015-09-22 23:33:45
【问题描述】:
我在 Mac 上使用“请求”模块时遇到问题。我使用 python34 并通过 pip 安装了“请求”模块。我可以通过再次运行安装来验证这一点,它会告诉我模块已经安装。
15:49:29|mymac [~]:pip install requests
Requirement already satisfied (use --upgrade to upgrade): requests in /opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages
虽然我可以通过交互式 Python 解释器导入“请求”模块,但尝试在 PyCharm 中执行“导入请求”会产生错误“没有名为请求的模块”。我检查了我的 PyCharm Python 解释器设置,并且(我相信)它设置为与我的环境中使用的相同的 python34。但是,我也看不到 PyCharm 中列出的“请求”模块。
很明显,我在这里遗漏了一些东西。你们能建议我应该在哪里看或应该修复什么以使该模块正常工作吗?我的印象是,当我在我的环境中通过 pip 安装模块时,PyCharm 会检测到这些变化。但是,我这边好像出了点问题……
【问题讨论】:
-
which -a python输出什么? -
您应该为项目设置一个 virtualenv 并在其中安装请求。
-
which -a python 输出如下:23:47:55|mymac [~]:which -a python /opt/local/bin/python /usr/bin/python
-
然后 pip 正在为
/usr/local/bin/python3安装。将您的解释器设置为/usr/local/bin/python3。如果您通常使用Python 3.4.3我会删除另一个,正如您所发现的那样,拥有同一个 python 的几个不同版本可能会很痛苦。删除是安全的,你只需要在处理你的系统python时小心。 -
您的系统 python 将是 2.7,即
/usr/bin/python,您的操作系统将使用您的系统 python,因此删除或更改它几乎肯定会破坏它,您可以安全地删除 python3 和/opt/local/bin/python。正如 john 建议的那样,您可以将 virtualenv 用于不同的项目,这是一个隔离环境virtualenv.pypa.io/en/latest。我也喜欢 pyenv github.com/yyuu/pyenv。因此,请始终保留您的/usr/bin/python,您可以删除或保留其他任何内容。
标签: python pip pycharm anaconda virtualenv