Ich installierte pip mit get-pip.py
danach pip freeze
unter Fehler auslöst
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
Also habe ich geprüft, 1.7 ist die neueste. Wenn ich die folgenden Schritte befolgt habe und es nicht aktualisiert wird ... Hilf mir hier ...
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)
Antworten:
Normalerweise führe ich einfach die folgenden Befehle aus, um ein Upgrade durchzuführen
pip2
(=pip
standardmäßig) undpip3
:Sie müssen sicherstellen, dass Sie die Version (für Python 2 oder 3), auf die Sie auf den Befehl
pip
ohne Nummer reagieren möchten , als letztes aktualisieren .Beachten Sie auch, dass hierdurch die alten
apt-get
Paketversionen oder ein anderer Paketmanager installiert bleiben, aber neue Versionen hinzugefügt werden, die nichts mit den Systempaketen zu tun haben. Diepip
-installierten Pakete werden bevorzugt, aber Sie sollten dieapt-get
-installierten auch nicht entfernen , da der Paketmanager nicht wissen kann, dass einepip
andere Version installiert ist.quelle
sudo -H
?pip
will man seine heruntergeladenen Dateien irgendwo hinschreiben , um sie zwischenzuspeichern. Es wurde implementiert, um sie in einem Unterordner des Basisverzeichnisses des aktuellen Benutzers abzulegen. Wenn Sie es ohne-H
ausführen, wird es sich beschweren, da es feststellt, dass das aktuell eingestellte Basisverzeichnis (normaler Benutzer) nicht mit dem Benutzer übereinstimmt, unter dem es ausgeführt wird (root). Wenn es seine Dateien in Ihr Home-Verzeichnis schreibt, gehören sie root und sind für Sie als normaler Benutzer nicht mehr zugänglich. Daher werden die Dateien in diesem Fall nicht zwischengespeichert. Es ist nicht schrecklich, das wegzulassen,-H
was espip
erkennt und Sie warnt.pip
Befehl? Wenn ich ein Upgrade durchführepip2
, wird derpip2
Befehl nur nicht aktualisiertpip
.pip
es relativ zu der Version von Python ist, die Sie aufrufen. und deswegen sind seine befehlepip2
&pip3
nennen jeweils die entsprechende version von python um pip zu aktualisieren. Ist das sinnvoll?Ich denke der
Befehl funktioniert nicht mehr richtig. Der richtige Befehl sollte sein:
für Python 3:
für Python 2:
quelle
pip install -U pip
(siehe Aktualisieren von pip )Gehen Sie zu dieser Website https://pypi.python.org/pypi/pip
kopiere (oder) lade den Quelllink herunter (endet in .tar.gz)
Für 9.0.1 lautet der Link https://pypi.python.org/pypi?:action=show_md5&digest=35f01da33009719497f01a4ba69d63c9
Installationsvorgang
Die Version sollte auf die neueste Version geändert werden, und der Link kann mit dem Link der neuesten Version aktualisiert werden
das sollte funktionieren
quelle
pip install -U pip
Die kürzeste, die ich kenne.
quelle
Ich denke, es ist erwähnenswert, dass das, was ich im Folgenden erkläre, ist, wenn Sie erwarten, dass pip auf Python 2 und pip3 auf Python 3 zeigt. Der Grund, warum ich dies erwähne, ist, dass beim Upgrade von pip3 auch der Befehl pip as übernommen wird Gut. Dies ist eine etwas seltsame Konvention, da Python standardmäßig auf 2.x und Python3 auf 3.x verweist. Davon abgesehen ...
Wenn Sie möchten, dass die neuesten Versionen von python 2.x pip und python 3.x pip3 auf demselben Computer vorhanden sind (mit pip für 2.x und pip3 für 3.x), müssen Sie folgende Schritte ausführen:
Die anderen Antworten von anderen zur Verfügung gestellt nicht zu erwähnen , dass nach dem Ausführen pip sudo PIP3 installieren --upgrade Sie mit den am Ende dann pip Befehl Installieren von Paketen in den Python 3.x Verzeichnisse anstelle der Python 2.x - Verzeichnisse.
Ein Teil von mir denkt, wir sollten pip einfach nach dem Upgrade von pip3 verlassen (auch wenn es pip -> pip3 ist), aber es besteht die Gefahr, dass die Leute bereits erwarten, dass pip wie Python funktioniert - beide zeigen auf Python 2.x. Mit anderen Worten, Menschen sind wahrscheinlich in der Verwendung von pip / python für Python 2.x geschult, genau wie sie in der Verwendung von pip3 / python3 für Python 3.x geschult sind .
quelle
Ich habe denselben Fehler festgestellt und ihn mit den folgenden Befehlen behoben.
ImportError: Kein Modul mit dem Namen packaging.version
quelle
apt-get purge -y python-pip
arbeitete für mich