2017-03-17 121 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中的站點包。