Невозможно обновить пункт

Я новичок в Linux и Ubuntu.

Я пытался обновить пипс, но столкнулся с этим...

$ sudo pip install --upgrade pip
Cannot fetch index base URL https://pypi.python.org/simple/
Downloading/unpacking pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-7.1.0-py2.py3-none-any.whl#md5=b108384a762825ec20345bb9b5b7209f
  Downloading pip-7.1.0-py2.py3-none-any.whl (1.1MB): 1.1MB downloaded
Installing collected packages: pip
  Found existing installation: pip 1.5.4
    Not uninstalling pip at /usr/lib/python2.7/dist-packages, owned by OS
Successfully installed pip
Cleaning up...

Есть идеи почему?

11 ответов

Решение

apt система и PyPI использует два разных механизма.

В репозиториях Ubuntu много модулей python доступны в виде пакетов, но их число невелико по сравнению с PyPI (индекс пакетов Python). Чтобы оставаться последовательным при обновлении пакета, вы должны рассмотреть метод, который вы использовали изначально, чтобы установить его.

Так что если вы установили пакет (модуль) из PyPI с помощью pip тогда вы должны использовать pip обновить пакет с PyPI (в том числе pip сам). С другой стороны, если вы использовали apt Система для установки модуля (как пакет), которую необходимо использовать apt обновить это снова.

В двух словах, выполните следующее для обновления python-pip до последней версии:

sudo apt-get install python-pip

Попробуйте установить его с easy_install:

easy_install -U pip

У меня была такая же проблема в течение долгого времени, и я нашел решение сегодня. Когда вы устанавливаете pip через python-pip, вы скачиваете с устаревшего сервера Linux. Вы должны скачать с сервера Python. Чтобы решить эту проблему, сделайте следующее:

sudo apt-get purge pip
sudo apt-get install python-setuptools
sudo apt-get install python-dev 
sudo easy_install pip 
pip install pip --upgrade 

Это вызвано конфликтом между версией pip, предоставленной системным пакетом, например python-pipи версия, предоставленная PyPI через сам pip.

Чтобы это исправить, просто удалите python-pip с sudo apt-get purge python-pip,

Если вы уже использовали старую версию pip для установки более новой версии, обновленную версию следует оставить в /usr/local/bin, Если нет, вы можете установить самую последнюю версию Pip с нуля с помощью:

curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo python2.7

На самом деле, вы можете отредактировать ваш скрипт 'pip':

от корня:

$ which pip  # -> prints 'pip' location

$ nano `which pip` # -> open with your editor, note the backticks!

заменить __requires__ с вашей последней версией пипа как:

__requires__ = 'pip==7.1.2'

чем редактировать строку с вызовом load_entry_point:

load_entry_point(__requires__, 'console_scripts', 'pip')()

а также:

$pip -V
pip 7.1.2 from /usr/local/lib/python2.7/dist-packages (python 2.7)

Кроме того, я должен обновить мой пакет setuptools, чтобы установить некоторые пакеты.

Я столкнулся с этой проблемой, когда работал на удаленной машине, в которую входил ssh'd. Я только что установил Python 3 и не смог получить pip для обновления, хотя я пытался обновить его как через pip, так и через apt-get.

Выйти из удаленного сервера и вернуться в исправлено.

Попробуйте запустить sudo -H pip3 install --upgrade pip обновить свой pip3 (для Python 3). И наоборот, вы можете сделать sudo -H pip2 install --upgrade pip также обновить pip (для Python 2).

Используйте эту ссылку для обновления. В принципе:

  1. Скачать файл get-pip.py
  2. бежать python get-pip.py

Если python-pip установлен из репозиториев apt с пользователем sudo - запустите sudo -H install --upgrade pip То же самое для установки модулей PIP.

Вот выход из моей консоли на 16.04

..... Successfully installed requests
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
:~$ pip install --upgrade pip
Collecting pip
  Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)
    100% |████████████████████████████████| 1.3MB 672kB/s 
Installing collected packages: pip
Successfully installed pip-8.1.1
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
:~$ sudo -H pip install --upgrade pip
Collecting pip
  Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)
    100% |████████████████████████████████| 1.3MB 692kB/s 
Installing collected packages: pip
  Found existing installation: pip 8.1.1
    Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Successfully installed pip-9.0.1
:~$ 

также см. Что такое флаг -H для pip? https://stackoverflow.com/questions/28619686/what-is-the-h-flag-for-pip

У меня возникла похожая проблема при обновлении pip 9.0.3 до версии 18.0.

Поэтому при обновлении сначала происходит удаление, а затем устанавливается последняя версия. Тем не менее, я обнаружил, что с первой попытки написано "успешно удален pip-9.0.3"

При последующих попытках мы получаем ту же ошибку. Это потому, что pip-9.0.3 удален. Как и в случае с принятым ответом, я установил pip в качестве администратора в своей системе Windows 10, получил последнюю версию и все было хорошо.

Надеюсь это поможет.

Я только новичок, поэтому я не уверен, но, вероятно, это связано с различиями между Python 2 и 3. Я думаю, что не обязательно быть суперпользователем, но вы можете легко это сделать, используя pip3 вместо pip также для обновления pip:pip3 install --upgrade pip

Другие вопросы по тегам