mou*_*aim 10 python python-2.7 python-requests
我正在尝试测试请求模块是否已正确安装.但是我收到以下错误:
raceback (most recent call last):
File "/Users/macbookpro/Desktop/test.py", line 1, in <module>
import requests
ImportError: No module named requests
Run Code Online (Sandbox Code Playgroud)
尝试运行以下测试脚本时:
import requests
print 'test'
Run Code Online (Sandbox Code Playgroud)
但我已经用pip安装了请求,并且pip list命令给出了以下结果:
MBPdeMacBook2:~ macbookpro$ pip list
arrow (0.7.0)
beautifulsoup4 (4.4.1)
classifier (1.6.5)
coursera-dl (0.6.1)
Django (1.8.6)
html5lib (1.0b8)
keyring (9.0)
lxml (3.6.0)
Pillow (3.4.2)
pip (8.0.2)
pyasn1 (0.1.9)
requests (2.14.2)
setuptools (19.4)
six (1.10.0)
urllib3 (1.16)
vboxapi (1.0)
virtualenv (13.1.2)
wheel (0.26.0)
Run Code Online (Sandbox Code Playgroud)
为什么没有导入请求?
编辑:
MBPdeMacBook2:~ macbookpro$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
MBPdeMacBook2:~ macbookpro$ which pip
/usr/local/bin/pip
MBPdeMacBook2:~ macbookpro$ python --version
Python 2.7.11
MBPdeMacBook2:~ macbookpro$ pip --version
pip 8.0.2 from /usr/local/lib/python2.7/site-packages (python 2.7)
Run Code Online (Sandbox Code Playgroud)
一般来说,您应该养成在virtualenv. 我发现这里的文档很有帮助。
如果您在虚拟环境中安装所有依赖项,您将(大部分)确定您正在安装这些 deps。在您运行作业的同一环境中。
对于您的情况,在命令行上转到代码所在的目录并运行
pip install virtualenv
virtualenv my_project
source my_project/bin/activate
Run Code Online (Sandbox Code Playgroud)
现在 virtualenv 处于活动状态,您可以
pip install requests
Run Code Online (Sandbox Code Playgroud)
只有安装在 virtualenv 中的才可用。这将保持您的系统清洁。每个项目都应该有自己的 virtualenv,这意味着只有每个项目所需的依赖项对它们可用。通过这种方式,您可以为一个项目安装某个依赖项的版本 1,为另一个项目安装版本 2。他们不会发生冲突。
安装所有依赖项后,运行
pip freeze > requirements.txt
Run Code Online (Sandbox Code Playgroud)
获取已保存项目的所有依赖项的列表。下次您需要安装这些时,您只需运行
pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)
在 virtualenv 中完成工作后,运行
deactivate
Run Code Online (Sandbox Code Playgroud)
which python我不是 100% 确定,但来自和 的路径which pip可能表明您安装了两个版本。Python 版本是 OS X 附带的旧版本,也是另一个版本。
我建议你从brew安装Python27(甚至更好的Python3)。
您可以使用单个命令安装brew ,并使用另一个命令安装Python27/3。完成后,您可以PATH在 shell rc 文件中设置变量,然后就可以开始了。
我(通过brew)安装了Python27,并且我的(工作环境)报告了以下路径:
which python: /usr/local/bin/python
which pip: /usr/local/bin/pip
Run Code Online (Sandbox Code Playgroud)
和
python --version: 2.7.15
pip --version: pip 9.0.1 from /usr/local/lib/python2.7/site-packages (python2.7)
Run Code Online (Sandbox Code Playgroud)