Ich bin neu auf dem Mac und anscheinend habe ich eine Art Fehler gemacht. Ich habe Python über Tutorials gelernt, und zwischen Homebrew, Pip und XCode sind meine Versionen irgendwie alle gemischt. Pip3 zeigt auf python2, also schlagen alle meine python3-Versuche fehl usw.
Ich recherchiere, wie ich alle Versionen sicher entfernen und dann nach einer Neuinstallation (Homebrew?) suchen kann, aber ich bin etwas nervös.
Ich habe einige hervorragende Links gefunden:
Natürlich rührt man nichts im Root- /system
Verzeichnis an, und im Grunde wird alles andere gelöscht. Was mich nervös macht, ist, dass diese Links ziemlich altbacken sind. (sechs Jahre! +) Ich bin mir nicht sicher, ob ich ihnen wirklich vertraue oder nicht.
War jemand in letzter Zeit hier? Kann ich den oben verlinkten Beiträgen vertrauen? Wie bereinige ich dieses Chaos der Python-Version? Hinweis: Ich verwende MacOS Sierra (10.12.5)
Also habe ich am Ende alle Python-Installationen entfernt und Dinge über Homebrew neu installiert.
which python
---> /Library/Frameworks/Python.framework/Versions/2.7/bin/python
Löschen Sie das gesamte Python.framework-Verzeichnis aus /Library/Frameworks
.which python3
---> /usr/local/bin/python3
Löschen Sie das gesamte python3-Verzeichnis.Ich war etwas nervös wegen der Symlinks. Ich habe zunächst diejenigen umbenannt, die mir offensichtlich Probleme bereiten würden. Es stellt sich heraus, dass das unnötig war. Verwenden Sie stattdessen einfach:
$ brew doctor
Warning: Broken symlinks were found. Remove them with 'brew prune':
/usr/local/bin/python-32
/usr/local/bin/python2-32
/usr/local/bin/python2.7-32
/usr/local/bin/python2_DNU
/usr/local/bin/python_DNU
/usr/local/bin/pythonw-32
/usr/local/bin/pythonw2-32
/usr/local/bin/pythonw2.7-32
Also brew prune
(oder brew cleanup --prune
in neueren Versionen von Homebrew) hat perfekt funktioniert. Alle oben genannten Symlinks wurden entfernt.
Installieren Sie Python und Python3 über Homebrew neu. Alles erledigt.
Zu keinem Zeitpunkt habe ich die Python-Installation im /System
Ordner berührt.
Oh, und um es klar zu sagen. Die Antwort auf die Ausgangsfrage lautet
Ja, Sie können den alten Referenzen vertrauen, wie sie geschrieben wurden! Diese Anleitung ist immer noch gültig.
Meine Python-Version war 3.6, ich wollte auf 3.7 upgraden (falls Sie ähnliche Anforderungen haben). Ich verwende macOS Version 10.12.6 und das einfache Deinstallieren und Neuinstallieren hat bei mir funktioniert:
brew uninstall --ignore-dependencies python3
Dann:
brew install python3
und fertig:
python3
Python 3.7.2 (default, Jan 13 2019, 12:51:54)
[Clang 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
ipython
indem ich das Startskript manuell bearbeitete - um auf die Brew-Version von Python zu verweisenSystemdateien werden durch den Systemintegritätsschutz geschützt. Sie können diesen Anweisungen nicht zu rm -rf
zufälligen Ordnern in /System folgen, ohne zuerst SIP zu deaktivieren.
Da die Dateien jedoch geschützt sind, wissen Sie, dass die Dateien nicht geändert wurden. Ihr 'Versionsdurcheinander' wäre auf Ihr Shell-Setup zurückzuführen und würde sowieso nicht durch Ändern von Systemdateien geändert. Sie sollten diese Dateien, die garantiert in macOS vorhanden sind, nicht anfassen.
Homebrew wird separat in /usr/local/Cellar installiert. Verwenden Sie Homebrew, um Ihre Python-Installation zu verwalten, und ignorieren Sie die Systeminstallation vollständig.
/system
. None = Not One, Zero, Zip, Nada. Es gibt Dinge zu löschen in 1) Python 3.3-Ordner in Ihrem Anwendungsordner. 2) /Library/Frameworks/Python.framework 3) ~ 20 Symlinks in /usr/local/bin. 4) Referenzen im Shell-Pfad (falls vorhanden). Ich würde nicht glauben, dass einer von denen den Schutz trifft, von dem Sie sprechen. Was vermisse ich?$which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
$ which python3
/usr/local/bin/python3
plus Python 2.3, 2.4, 2.5, 2.7 und aktuell unterSystem/Library/Frameworks/Python.framework/Versions/...
zipzit
kein Hang
Nachtschatten
Iwan Proskurjakow
/System/Library/Frameworks/Python.framework/
darf niemals entfernt werden, Link docs.python.org/3/using/mac.htmlGraphicalDot
Standaa - Erinnere dich an Monica