Ich habe Anaconda auf meinem Computer installiert und möchte es aktualisieren. In Navigator kann ich sehen, dass es mehrere einzelne Pakete gibt, die aktualisiert werden können, aber auch ein anaconda
Paket, das manchmal eine Versionsnummer hat und manchmal sagt custom
. Wie gehe ich vor?
259
conda update [-n root] -v anaconda
, aber es bietet an, meine zu DOWNGRADIERENpython: 3.7.0-hc167b69_0 --> 3.6.6-hc167b69_0
. Scheint sehr kaputt zu sein.Antworten:
Was 95% der Menschen tatsächlich wollen
In den meisten Fällen möchten Sie den folgenden Befehl ausführen, wenn Sie sagen, dass Sie Anaconda aktualisieren möchten:
(Dies sollte jedoch vorangestellt werden,
conda update -n root conda
damit Sie die neuesteconda
Version installiert haben.)Dadurch werden alle Pakete in der aktuellen Umgebung auf die neueste Version aktualisiert. Das Kleingedruckte ist, dass möglicherweise eine ältere Version einiger Pakete verwendet wird, um Abhängigkeitsbeschränkungen zu erfüllen (häufig ist dies nicht erforderlich und wenn dies erforderlich ist) Der Paketplan-Löser wird sein Bestes tun, um die Auswirkungen zu minimieren.
Dies muss über die Befehlszeile ausgeführt werden. Der beste Weg dorthin führt über Anaconda Navigator, dann über die Registerkarte "Umgebungen". Klicken Sie dann auf das Dreieck neben der
root
Umgebung und wählen Sie "Terminal öffnen":Dieser Vorgang aktualisiert nur die eine ausgewählte Umgebung (in diesem Fall die
root
Umgebung). Wenn Sie andere Umgebungen haben, die Sie aktualisieren möchten, können Sie den obigen Vorgang wiederholen, aber zuerst auf die Umgebung klicken. Wenn es ausgewählt ist, befindet sich rechts eine dreieckige Markierung (siehe Bild oben, Schritt 3). Oder Sie können über die Befehlszeile den Umgebungsnamen (-n envname
) oder den Pfad (-p /path/to/env
) angeben, um beispielsweise Ihredspyr
Umgebung anhand des obigen Screenshots zu aktualisieren :Aktualisieren Sie einzelne Pakete
Wenn Sie nur ein einzelnes Paket aktualisieren möchten, klicken Sie einfach in Navigator auf den blauen Pfeil oder die blaue Versionsnummer, z. B. für
astroid
oderastropy
im obigen Screenshot. Dadurch werden diese Pakete für ein Upgrade markiert. Wenn Sie fertig sind, müssen Sie auf die Schaltfläche "Übernehmen" klicken:Oder über die Kommandozeile:
Aktualisieren nur der Pakete in der Standard-Anaconda-Distribution
Wenn Sie sich nicht für Paketversionen interessieren und nur "den neuesten Satz aller Pakete in der Standard-Anaconda-Distribution, solange sie zusammenarbeiten" möchten, sollten Sie sich diesen Kern ansehen .
Warum das Aktualisieren des Anaconda-Pakets fast immer eine schlechte Idee ist
In den meisten Fällen führt das Aktualisieren des Anaconda-Pakets in der Paketliste zu einem überraschenden Ergebnis: Sie können tatsächlich viele Pakete herabstufen (dies ist wahrscheinlich, wenn die Version als angegeben wird
custom
). Das Wesentliche oben enthält Details.Nutzen Sie Conda-Umgebungen
Ihre
root
Umgebung ist wahrscheinlich kein guter Ort, um einen genauen Satz von Paketen zu verwalten: Es wird ein dynamischer Arbeitsbereich sein, in dem neue Pakete installiert und Pakete zufällig aktualisiert werden. Wenn Sie einen genauen Satz von Paketen benötigen, erstellen Sie eine Conda-Umgebung, um diese zu speichern. Dank des Conda-Paket-Cache und der Art und Weise, wie die Dateiverknüpfung verwendet wird, ist dies normalerweise i) schnell und ii) verbraucht sehr wenig zusätzlichen Speicherplatz. Z.BDie Conda-Dokumentation enthält weitere Details und Beispiele.
Pip, PyPI und Setuptools?
Nichts davon hilft beim Aktualisieren von Paketen, die von PyPI über
pip
oder von mit installierten Paketen installiert wurdenpython setup.py install
.conda list
gibt Ihnen einige Hinweise zu den pip-basierten Python-Paketen, die Sie in einer Umgebung haben, aber es wird nichts Besonderes tun, um sie zu aktualisieren.Kommerzielle Nutzung von Anaconda oder Anaconda Enterprise
Es ist ziemlich genau die gleiche Geschichte, mit der Ausnahme, dass Sie die
root
Umgebung möglicherweise nicht aktualisieren können, wenn sie von einer anderen Person installiert wurde (sagen wir zu/opt/anaconda/latest
). Wenn Sie die von Ihnen verwendeten Umgebungen nicht aktualisieren können, sollten Sie in der Lage sein, Folgendes zu klonen und anschließend zu aktualisieren:quelle
conda update anaconda
für zukünftige Updates gehen. Nur tatconda update --all
und konnte nicht Navigator starten danach wegen einesPySide ModuleNotFoundError
dem ich konnte es einfach nicht lösen. Auch nach dem Downgrade. Also musste ich Anaconda neu installieren und meine Umgebungen neu einrichten. Und das ist das zweite Mal, dass mir das passiert, obwohl ich nie Probleme damit hatteconda update anaconda
. Auch wenn das bedeutet, dass meine Pakete nicht sehr aktuell sind (die Distribution wird immer noch ziemlich häufig aktualisiert: docs.anaconda.com/anaconda/release-notes ) Ich bevorzuge ein stabiles Systemconda update conda
auch tun . Conda hat sich im vergangenen Jahr erheblich weiterentwickelt, und insbesondere hatten wir Ende September 2017 eine Veröffentlichung, die viele Verbesserungen einführte. Wennconda update --all
Pausen Dinge (die, historisch gesehen , es war so gut wie sicher zu tun) , dann ist dies ein Fehler , den Sie zu dem Conda GitHub Bugtracker melden sollte - heute , dass der Betrieb nicht alle vorhandenen Komponenten brechen (mit der Maßgabe , Conda Bedürfnisse bis zu Datum).conda update -n root conda
statt der oben genannten tun , damit es funktionierte.conda update --all
wollen 95% der Menschen nicht. Dies kann zu einer instabilen Umgebung führen. Die Antwort von user3056882 ist sicherer.conda update --all
fehlgeschlagen für mich mit einem Fehler "Erlaubnis verweigert". Hat es mit Administratorrechten erfolgreich ausgeführt. So führen Sie die Ausführung mit Administratorrechten aus: Start> Anaconda3> Anaconda-Eingabeaufforderung> Rechtsklick> Mehr> Als Administrator ausführen.Wenn Sie versuchen, Ihre Anaconda-Version auf eine neue zu aktualisieren, werden Sie feststellen, dass das Ausführen des neuen Installationsprogramms nicht funktioniert, da das Installationsverzeichnis nicht leer ist.
Sie sollten also conda verwenden, um ein Upgrade durchzuführen, wie in den offiziellen Dokumenten beschrieben :
Wenn Sie unter Windows eine Installation "für alle Benutzer" durchgeführt haben, muss möglicherweise eine Anaconda-Eingabeaufforderung mit Administratorrechten ausgeführt werden.
Dies verhindert den Fehler:
quelle
Öffnen Sie "Befehl oder Conda-Eingabeaufforderung" und führen Sie Folgendes aus:
Es ist eine gute Idee, beide Befehle zweimal (nacheinander) auszuführen, um sicherzustellen, dass alle Basisdateien aktualisiert werden.
Dies sollte Sie auf die neuesten "Releases" zurückführen, die Pakete enthalten, die von den Mitarbeitern von Continuum ausgewählt wurden, um gut zusammenzuarbeiten.
Wenn Sie möchten, dass die letzte Version jedes Pakets ausgeführt wird (dies kann zu einer instabilen Umgebung führen ):
Hoffe das hilft.
Quellen:
quelle
conda update anaconda
sollten wieder auf eine der 'Versionen' zurückgreifen, die Pakete enthält, die von den Mitarbeitern von Continuum ausgewählt wurden, um gut zusammenzuarbeiten.conda install anaconda
.Wenn Sie Probleme haben, z. B. von 3.3.x auf 4.x zu gelangen (conda update conda "funktioniert nicht", um zur nächsten Version zu gelangen), versuchen Sie es genauer:
https://www.anaconda.com/blog/developer-blog/anaconda-4-release/
Sie sollten wissen, was Sie tun, da die Conda aufgrund der erzwungenen Installation brechen kann. Wenn Sie mehr Flexibilität / Sicherheit wünschen, können Sie pkg-manager wie nix (-pkgs) [mit nix-shell] / NixOS verwenden.
quelle
conda update --all
bricht alles, wie ihre eigenen FAQ sagt, und in meinem Fall bietet es fröhlich an, meine Python von 3.7.0 auf 3.6.6 herunterzustufen (obwohl es weiß, dass 3.7.1 verfügbar ist)In der offiziellen Anaconda-Dokumentation wird Folgendes empfohlen:
Wenn die zweite Zeile einen Fehler auslöst (Tippfehler in den Dokumenten?), Funktionierte dies hier:
(Alle Versionsspezifizierer finden Sie hier )
Der Befehl wird auf eine bestimmte Version des Anaconda-Metapakets aktualisiert.
Dies ist imho, was 95% der Anaconda-Benutzer wollen. Einfach ein Upgrade auf die neueste Version des Anaconda-Metapakets (zusammengestellt und getestet von den Anaconda-Händlern) und ohne Rücksicht auf den Aktualisierungsstatus einzelner Pakete (die von ausgegeben werden
conda update --all
).quelle
conda update ...
Tippfehler? Einverstanden.Hier ist die beste Vorgehensweise (nach meiner bescheidenen Erfahrung). Durch Auswahl dieser vier Pakete werden auch alle anderen Abhängigkeiten auf die entsprechenden Versionen aktualisiert, damit Sie Ihre Umgebung konsistent halten können. Letzteres ist ein häufiges Problem, das andere in früheren Antworten zum Ausdruck gebracht haben. Diese Lösung benötigt das Terminal nicht.
quelle
Öffnen Sie Anaconda cmd im Basismodus:
Verwenden Sie dann conda update conda , um Anaconda zu aktualisieren
Sie können dann conda update --all verwenden , um alle Anforderungen für Anaconda zu aktualisieren
quelle
Öffnen Sie auf dem Mac das Terminal und führen Sie die folgenden 2 Befehle aus.
Stellen Sie sicher, dass Sie jeden Befehl mehrmals ausführen, um auf die aktuelle Version zu aktualisieren.
quelle
Ich verwende Windows 10. Das Folgende aktualisiert alles und installiert auch einige neue Pakete, einschließlich eines Python-Updates (für mich war es 3.7.3).
Versuchen Sie in der Shell Folgendes (ändern Sie unbedingt, wo Ihre Anaconda3-Daten installiert sind). Es dauert einige Zeit, um alles zu aktualisieren.
quelle
Führen Sie aus, um Ihre installierte Version auf die neueste Version zu aktualisieren, z. B. 2019.07
conda install anaconda=2019.07
In den meisten Fällen kann diese Methode Ihre Anforderungen erfüllen und Abhängigkeitsprobleme vermeiden
quelle
Suchen Sie die Datei env.yaml in C: \ Windows \ System32 und führen Sie den Befehl cmd als Administrator aus
dann funktioniert es!
quelle
Dies kann nur Python aktualisieren:
quelle