2017-03-17 139 views
1

我的系统是centos(linux)。我有两个Python版本,一个是2.7,另一个是3.6。我执行:尝试运行pip时出错

$ wget"https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb"# tar -xzvf pip-1.5.4.tar.gz 
$ cd pip-1.5.4 
$ python setup.py install 

但是,当我试图用pip,我得到了一个错误:

File "/root/anaconda3/bin/pip", line 11, in <module> 
    load_entry_point('pip==1.5.4', 'console_scripts', 'pip')() 
    File "/root/anaconda3/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 565, in load_entry_point 
    File "/root/anaconda3/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2598, in load_entry_point 
    File "/root/anaconda3/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2258, in load 
    File "/root/anaconda3/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2264, in resolve 
    File "/root/anaconda3/lib/python3.6/site-packages/pip-1.5.4-py3.6.egg/pip/__init__.py", line 9, in <module> 
    from pip.log import logger 
    File "/root/anaconda3/lib/python3.6/site-packages/pip-1.5.4-py3.6.egg/pip/log.py", line 9, in <module> 
    from pip._vendor import colorama, pkg_resources 
    File "/root/anaconda3/lib/python3.6/site-packages/pip-1.5.4-py3.6.egg/pip/_vendor/pkg_resources.py", line 1423, in <module> 
    register_loader_type(importlib_bootstrap.SourceFileLoader, DefaultProvider) 
AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader' 

我能做些什么?

+0

我想你可以用yum来安装它。 运行为根: 百胜安装python2-PIP 或 百胜取决于您使用Python版本安装python3-PIP 。 – magma

回答

0

使用virtualenv来指定python的版本。

Virtualenvs有助于解决图书馆冲突,最好为每个项目使用不同的virtualEnv。

安装的virtualenv和virtualenvwrapper

pip install virtualenv 
pip install virtualenvwrapper 

添加到.zshrc或.bashrc中:

export WORKON_HOME=$HOME/.virtualenvs 
export PROJECT_HOME=$HOME/code 
source /usr/local/bin/virtualenvwrapper.sh 

指定的Python与mkvirtualenv使用的: virtualenvwrapper让你指定的Python可执行文件不带路径:

mkvirtualenv -python=python3 myVirtualEnv 

运行:worko n 打印环境列表(空白)。 运行mkvirtualenv创建一个新的virtualenv:mkvirtualenv temp 新的环境,temp被创建并激活。 运行:workon 这次包括临时环境。 workon temp对新的virtualenv 使用PIP工作,安装的virtualenv 内包,你正在使用的virtualenv完成后,只需关闭了它

(如果你想删除的virtualenv,用rmvirtualenv) 使用lssitepackages列出virtualenv中的站点包。