web-dev-qa-db-fra.com

Comment mettre à niveau pip au dernier?

J'ai installé pip en utilisant get-pip.py après que pip freeze lève en dessous de l'erreur

Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/freeze.py", line 74, in run
    req = pip.FrozenRequirement.from_dist(dist, dependency_links, find_tags=find_tags)
  File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 299, in from_dist
    assert len(specs) == 1 and specs[0][0] == '=='
AssertionError

Storing debug log for failure in /home/simon/.pip/pip.log

Alors j'ai vérifié que 1.7 est le dernier. Si j'ai suivi les étapes ci-dessous et que la mise à jour ne se produit pas ... Aidez-moi ici ...

simon@simon-OptiPlex-780:~/Nightybuild$ pip --version
pip 1.5.6 from /usr/lib/python2.7/dist-packages (python 2.7)
simon@simon-OptiPlex-780:~/Nightybuild$ pip --version
pip 1.5.6 from /usr/lib/python2.7/dist-packages (python 2.7)
simon@simon-OptiPlex-780:~/Nightybuild$ pip install -U pip
Downloading/unpacking pip
  Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB): 1.1MB downloaded
Installing collected packages: pip
Successfully installed pip
Cleaning up...
simon@simon-OptiPlex-780:~/Nightybuild$ pip --version
pip 1.5.6 from /usr/lib/python2.7/dist-packages (python 2.7)
39
Raja Simon

En général, je lance simplement les commandes suivantes pour mettre à niveau pip2 (= pip par défaut) et pip3:

Sudo -H pip3 install --upgrade pip
Sudo -H pip2 install --upgrade pip

Vous devez vous assurer que vous mettez à niveau la version (pour Python 2 ou 3), que vous souhaitez réagir à la commande pip sans numéro, en dernier.

Veuillez également noter que cela conserve les anciennes versions empaquetées installées via apt-get ou tout autre gestionnaire de paquets, mais ajoute de nouvelles versions qui n’ont rien à voir avec les paquets système. Les packages pip- installés seront préférés, mais vous ne devriez pas non plus supprimer ceux apt-get- installés, car le gestionnaire de packages ne peut pas savoir que la version pip est installée autrement.

42
Byte Commander

Je pense que le

pip install --upgrade pip

la commande ne fonctionne plus correctement. La commande correcte devrait être:

  • pour Python 3:

    python3 -m pip install --upgrade pip
    
  • pour Python 2:

    python2 -m pip install --upgrade pip
    
20
Foad

Aller sur ce site https://pypi.python.org/pypi/pip

copier (ou) télécharger le lien source (se termine par .tar.gz)

pour 9.0.1, le lien est https://pypi.python.org/pypi?:action=show_md5&digest=35f01da33009719497f01a4ba69d63c9

procédure d'installation

wget //link goes here
tar -xzvf pip-9.0.1.tar.gz
cd pip-9.0.1
Sudo python3 setup.py install

la version doit être remplacée par la dernière version et le lien peut être mis à jour avec le lien de la dernière version

cela devrait marcher

4
an0nym0use

Je fais face à la même erreur et l'ai résolue avec les commandes suivantes.

Sudo su root
apt-get purge -y python-pip
wget https://bootstrap.pypa.io/get-pip.py
python ./get-pip.py
apt-get install python-pip

ImportError: Aucun module nommé packaging.version

0
Bhavesh Odedra

Je pense qu'il vaut la peine de mentionner que ce que j'explique ci-dessous est si vous vous attendez à pip pointer vers Python 2 et pip à pointer vers Python 3. La raison pour laquelle j'ai mentionné cela est que, lorsque vous mettez à niveau pip3, il prend également en charge la commande pip. Ceci est une convention quelque peu étrange car par défaut python pointe vers 2.x et python pointe vers 3.x. Cela étant dit...

Si vous souhaitez que les dernières versions de python 2.x pip et python 3.x pip3 coexistent sur le même ordinateur (à l'aide de pip pour 2.x et pip3 pour 3.x) ), vous devez effectuer les opérations suivantes:

Sudo apt-get install python-pip python3-pip --yes
Sudo python3 -m pip install pip --upgrade --force
Sudo python -m pip install pip --upgrade --force # this line associates pip with Python 2

Les autres réponses fournies par d'autres omettent de mentionner qu'après l'exécution de Sudo pip3 install pip --upgrade, vous obtiendrez la commande pip qui installe des packages dans le python Répertoires 3.x au lieu des répertoires python 2.x.

Une partie de moi pense que nous devrions simplement laisser pip be après la mise à niveau de pip3 (même si pip -> pip3), mais il existe un danger que les utilisateurs s’attendent déjà à ce que les fonctions de pip telles que python pointent vers python 2.x. En d'autres termes, les gens sont probablement formés pour utiliser pip/python pour python 2.x exactement comme ils sont formés pour utiliser pip3/python pour python 3.x.

0
Mike

pip install -U pip

Le plus court que je connaisse.

0
prosti