# List all versions of python interpreters available to install: pyenv install -l # List all versions of CPython (the default interpreter) available to install: pyenv install -l | grep -E '^\s*[0-9]' # Install specified version. In this case it installs 3.12.6 pyenv install 3.12.6 # List versions installed locally: pyenv versions # See global version pyenv global # Set global version to x.x.x; in this case it sets to 3.12.6 pyenv global 3.12.6 # See local version pyenv local # Set global version to x.x.x; in this case it sets to 2.7.18 pyenv global 3.12.6
Die Verwaltung verschiedener Sprachversionen und Interpreter ist seit September 2024 eine Art Grauzone in der Pythonic-Welt, aber natürlich hat die Community „inoffizielle“ Lösungen, die dieses Problem umgehen.
Besonders gut ist PyEnv, das sich stark an Rubys Lösungen für die Versionsverwaltung orientiert, was Ruby sehr gut kann.
PyEnv ist im Grunde eine Sammlung von Shell-Skripten, die bei der Installation und Auswahl einer bestimmten Python-Version oder eines bestimmten Python-Interpreters helfen, sowohl im globalen als auch im lokalisierten Bereich.
Es funktioniert, indem es ein Verzeichnis von Shims in den PATH einfügt und das Shim gemäß bestimmten Bedingungen erneut aufbereitet, um die Python-Binärdatei zuzuordnen (sowie andere Einstellungen wie Pip-Zuordnung, Wechsel der PYTHON_VERSION-Umgebung usw.).
Dieses Handbuch konzentriert sich auf MacOS und die Linux-Distributionen der Debian-Familie und behandelt die Einrichtung sowohl auf Bash als auch auf ZSH. Es wird pyenv-win nicht abdecken.
Dies setzt voraus, dass Homebrew und die Xcode-Tools installiert sind.
In der ersten Zeile werden Abhängigkeiten installiert, um Python-Versionen zu installieren und zu erstellen.
In der zweiten Zeile wird Pyenv selbst installiert.
Die dritte Zeile ist optional und hängt vor dem Ausführen von brew eine Pyenv-Last an, um eine falsch positive Warnung beim Ausführen von brew doctor zu vermeiden und um Fehler zu vermeiden, falls Sie brew python-Pakete entwickeln. Beachten Sie, dass es in .zshrc abgelegt wird. Auf Ihrem Mac sollte zsh bereits standardmäßig aktiviert sein, es sei denn, es handelt sich um einen älteren Computer. In diesem Fall sollten Sie es wahrscheinlich an .bash_profile anhängen.
brew install openssl readline sqlite3 xz zlib tcl-tk && \ brew install pyenv \ && echo "alias brew='env PATH=\"${PATH//$(pyenv root)\/shims:/}\" brew'" >> ~/.zshrc
Installieren Sie zunächst die Abhängigkeiten.
Klonen Sie dann das öffentliche Repository in $HOME/.pyenv.
sudo apt update && sudo apt install build-essential \ libssl-dev zlib1g-dev \ libbz2-dev libreadline-dev libsqlite3-dev curl git \ libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev && \ git clone https://github.com/pyenv/pyenv.git $HOME/.pyenv
Fügen Sie dies zu Ihrer relevanten Shell-Konfigurationsdatei hinzu, .bash_profile, wenn Sie Bash verwenden, .zshrc, wenn Sie zsh verwenden. Finden Sie mit echo $SHELL heraus, welche, wenn Sie sich nicht sicher sind.
## pyenv configs export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" if command -v pyenv 1>/dev/null 2>&1; then eval "$(pyenv init -)" fi
Aktualisieren Sie abschließend Ihre Terminalumgebung, um Änderungen mit exec „$SHELL“ zu sehen.
Nach dieser Einrichtung wird Ihr Python (nicht Python3!) Ihrer mit pyenv eingerichteten Python-Version zugeordnet.
Ich würde Ihnen empfehlen, dann eine Python-Version zu installieren (siehe Befehlsreferenz oben) und sie als Ihre globale Version einzurichten.
Überprüfen Sie mit python --version, ob alles funktioniert hat, um festzustellen, ob Ihre installierte Version mit der von Ihnen ausgewählten übereinstimmt. Wenn dies nicht der Fall ist, weist es wahrscheinlich immer noch auf den Systemstandard hin, sodass Sie möglicherweise einen der folgenden Schritte ausgeführt haben (wahrscheinlich den Teil zum Aktualisieren des Terminals, zum Schließen und erneuten Öffnen Ihres Terminalfensters, wenn Sie sich nicht sicher sind, was Sie tun sollen). ).
Viel Spaß mit einer vernünftigeren Python-Versionsverwaltung!
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3