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)
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.
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
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
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
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.
pip install -U pip
Le plus court que je connaisse.