我有两个版本的python,/usr/bin/python
(MacOS版本2.7.10)& /usr/local/bin/python
(通过brew
安装版本2.7.13)。
我使用pip
(由brew install python
安装)来安装模块 protobuf
!
但是/usr/bin/python
找不到模块 protobuf
,而/usr/local/bin/python
可以找到它。
如何让/usr/bin/python
找到模块
更新
@RNB
根据安装,sudo python get-pip.py
我有错误,如
:Collecting pip
Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)
100% |████████████████████████████████| 1.3MB 640kB/s
Collecting wheel
Downloading wheel-0.29.0-py2.py3-none-any.whl (66kB)
100% |████████████████████████████████| 71kB 6.3MB/s
Installing collected packages: pip, wheel
Found existing installation: pip 8.1.2
Uninstalling pip-8.1.2:
Successfully uninstalled pip-8.1.2
Rolling back uninstall of pip
Exception:
Traceback (most recent call last):
File "/tmp/tmpW2v8kJ/pip.zip/pip/basecommand.py", line 215, in main
.....
File"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/re.py", line 235, in _compile
cachekey = (type(key[0]),) + key
RuntimeError: maximum recursion depth exceeded while calling a Python object
溶液
根据@ RNB的建议,首先清理所有pip
个软件包,卸载brew python + pip,然后通过pip
为sys的python安装python get-pip.py
,这可能会导致{{1}错误},为wheel
设置选项--no-setuptools
& --no-wheel
,安装或升级python get-pip.py
& setuptools
通过wheel
。最后安装pip
,问题解决了!
答案 0 :(得分:3)
将版本化的Python命令与-m开关结合使用,以运行相应的pip副本。
python2 -m pip install SomePackage
#default Python 2
python2.7.10 -m pip install SomePackage
#具体是Python 2.7.10
最佳做法是使用virtualenv,
如果要使用pip将软件包安装到特定位置, 你可以简单地做到
pip install --install-option="--prefix=$PREFIX_PATH" package_name
使用--target选项,
pip install --target=<path> package_name
您还需要将<path>
位置添加到PYTHONPATH
答案 1 :(得分:0)
/usr/bin/python
您必须install pip并通过新的pip安装安装 protobuf
。