Ursachen, wenn die Python-Version nicht mit pyenv geändert werden kann

Hintergrund

Da die Unterstützung für Python2 Ende 2019 endet, haben wir uns für die Einführung von Pyenv entschieden, mit dem Sie problemlos zwischen Python-Versionen wechseln können. Ich bin jedoch ein wenig über den Versionswechsel mit pyenv gestolpert, daher fasse ich die Hauptgründe zusammen, warum ein Versionswechsel nicht möglich ist. Artikel über das Ende der Unterstützung für Python2 https://news.mynavi.jp/article/20191118-924132/

Umgebung

MacOS Catalina 10.15.2 Homebrew 2.2.2 pyenv 1.2.16

Ursache dafür, dass die Version nicht geändert werden kann

1. Der Weg von Pyenv führt nicht vorbei

Ich habe es mit Homebrew installiert, um Pyenv wie folgt zu installieren.

Installieren Sie pyenv


$ brew install pyenv

Die Installation wurde erfolgreich abgeschlossen und ich dachte darüber nach, python3.7.6 mit pyenv zu installieren, aber aus irgendeinem Grund wurde mir gesagt, dass pyenv nicht existiert. Normalerweise wird bei der Installation mit Homebrew automatisch eine symbolische Verknüpfung in / usr / local / bin erstellt und der Pfad wird übergeben, aber zu diesem Zeitpunkt wurde der Pfad aus irgendeinem Grund nicht übergeben. Anscheinend lag es daran, dass ich die vorinstallierte alte Version von pyenv entfernt habe oder der Link nicht automatisch gepostet wurde. Wenn ich die Verknüpfung mit dem Befehl homebrew erneut einfüge, wird der Pfad von pyenv jetzt übergeben.

Link mit Gebräu einfügen


$ brew link pyenv
$ pyenv --version
pyenv 1.2.16

2. Ich habe den Python-Befehlspfad nicht geändert

Dann habe ich python3 mit pyenv installiert und die Version von 2 auf 3 geändert. Als ich die Version mit dem Befehl pyenv überprüfte, war es 3.7.6, aber als ich die Version mit dem Befehl python überprüfte, war es 2.7.16 und aus irgendeinem Grund konnte ich die Version nicht ändern.

Python-Versionsänderung


$ python --version
Python 2.7.16
#Überprüfen Sie die installierbare Version
$ pyenv install --list
Available versions:
  2.1.3
  2.2.3
  2.3.7
  2.4.0
  2.4.1
  2.4.2
・ ・ ・
# python3.7.Installieren Sie 6
$ pyenv install 3.7.6
#Überprüfen Sie die installierte Version
$ pyenv versions
* system
  3.7.6
#Version 3.7.Wechseln Sie zu 6
$ pyenv global 3.7.6
$ pyenv versions
  system
* 3.7.6
#Version prüfen
$ python --version 
Python 2.7.16

Also habe ich den Pfad überprüft, den der Python-Befehl betrachtet. Dann war das Ziel "/ usr / bin / python". Wenn Sie Python verwenden möchten, das von pyenv versioniert wird, Ich musste den Zielpfad des Befehls in "~ / .pyenv / shims / python" ändern.

Ändern Sie den Zielpfad des Python-Befehls


$ which python
/usr/bin/python
$ eval "$(pyenv init -)"
$ which python
~/.pyenv/shims/python
$ python --version
Python 3.7.6

Ich konnte die Version sicher ändern.

Zusammenfassung

Durch diese Arbeit zur Änderung der Python-Version hatte ich das Gefühl, dass die Versionsverwaltung der Programmiersprache unerwartet problematisch war. Allerdings werden nicht nur Python, sondern alle Programmiersprachen häufig aktualisiert. Und jeder Inhalt muss gepflegt und an die neue Version angepasst werden, wenn sich die Harvard ändert. Vor diesem Hintergrund hatte ich das Gefühl, dass ich ein Tool wie pyenv brauchte, mit dem sich die Version leicht ändern lässt. Beim Erstellen neuer Inhalte scheint es wichtig zu sein, zunächst einen Mechanismus in Betracht zu ziehen, mit dem Sie die Version der Programmiersprache gleichzeitig mit der Installation der Programmiersprache einfach verwalten können.

Referenzmaterial

So installieren und verwenden Sie pyenv. Was tun, wenn Sie die Python-Version nicht wechseln können? https://qiita.com/koooooo/items/b21d87ffe2b56d0c589b [Python] Verstehe, wie Pyenv die Version wechselt https://akamist.com/blog/archives/2610 Über den Link in Homebrew https://hacknote.jp/archives/23816/

Recommended Posts

Ursachen, wenn die Python-Version nicht mit pyenv geändert werden kann
Ändern Sie die Python-Version mit pyenv
[Python] Seien Sie vorsichtig, wenn Sie Druck verwenden
"Temporäre Lösung", wenn pip nicht aktualisiert werden kann [Python]
Untersuchung beim Import kann nicht mit Python durchgeführt werden
Python Hinweis: Wenn der Befehl pip nicht verwendet werden kann
Mindestnotizen bei Verwendung von Python auf Mac (pyenv edition)
Wenn USB nicht formatiert werden konnte
Wenn pydub nicht installiert werden kann
Optionen bei der Installation von Bibliotheken, die nicht in pyenv weitergeleitet werden können
Lösung, wenn das Bild mit tkinter [python] nicht angezeigt werden kann
Beachten Sie Links, die bei der Verwendung von Python, Selenium2 hilfreich sein können
Skripte, die bei der Verwendung von Bottle in Python verwendet werden können
Liste der zu installierenden Bibliotheken bei der Installation von Python mit Pyenv
Vorsichtsmaßnahmen bei der Verwendung von Pit mit Python
[Python] Fehler- und Lösungsnotiz bei Verwendung von venv mit pyenv + anaconda
Hinweise zur Installation von Python mit PyEnv
Installieren Sie Python unter CentOS mit Pyenv
Vorsichtsmaßnahmen bei der Verwendung von Phantomjs aus Python
Bei Verwendung von MeCab mit virtualenv python
Installieren Sie Python unter CentOS mit pyenv
Vorsichtsmaßnahmen bei Verwendung von sechs mit Python 2.5
Bei Verwendung regulärer Ausdrücke in Python
Periodische Ausführungsverarbeitung bei Verwendung von tkinter [Python3]
Was Rubyist bei der Verwendung von Pyenv wissen sollte
Platzierung von Fabicon (bei Verwendung von Python, Flask, Heroku)
[Python, Multiprocessing] Verhalten für Ausnahmen bei Verwendung von Multiprocessing
Python-Modul mit "- (Bindestrich)" kann nicht gelöscht werden
Lösung, wenn aws-cli in der virtuellen Umgebung von Mac nicht ausgeführt werden kann (nach der Installation von Python 3.8)
Korrespondenznotiz, wenn die Richtungstaste nicht in der Python-Befehlszeile verwendet werden kann
Ich kann mit Python3.5 (Windows) + django1.7.1 kein Projekt erstellen.
Wenn Sie mit APLpy keine Konturkarte zeichnen können
[Linux] Wenn "| (Pipe)" unter CentOS7 nicht getroffen werden kann
Installieren Sie Python 3.8.6 unter macOS BigSur mit pyenv
Einstellungen für die Python-Umgebung (virtualenv + pip ist nicht möglich)
Zeichenkodierung bei Verwendung des CSV-Moduls von Python 2.7.3
PIL kann nicht von virtualenv mit pyenv installiert werden
Was verwenden Sie beim Testen mit Python?
Ich erhalte eine Fehlermeldung, wenn ich versuche, Python mit pyenv in Catalina auf 3 Serien zu erhöhen