Mit Pyenv können Sie leicht zwischen mehreren Versionen von Python wechseln. Es ist einfach, unauffällig und folgt der Unix-Tradition von Einzweckwerkzeugen, die eine Sache gut machen.
Dieses Projekt wurde von RBENV und Ruby-Build gegabelt und für Python modifiziert.
PATH
ein Verzeichnis hinzufügen.Die Homebrew -Option aus dem Abschnitt MacOS unten würde auch funktionieren, wenn Sie Homebrew installiert haben.
curl https://pyenv.run | bash
Weitere Informationen finden Sie in unserem anderen Projekt: https://github.com/pyenv/pyenv-installer
Auf diese Weise werden Sie mit der neuesten Version von PyEnv in Gang gebracht und es einfach machen, die Gabelung zu geben und alle Änderungen zurück zu beitragen.
$HOME/.pyenv
(aber Sie können es woanders installieren): git clone https://github.com/pyenv/pyenv.git ~/.pyenv
cd ~/.pyenv && src/configure && make -C src
Die Optionen aus dem obigen Linux -Abschnitt funktionieren ebenfalls, aber Homebrew wird für die grundlegende Nutzung empfohlen.
Aktualisieren Sie Homebrew und installieren Sie PyEnv:
brew update
brew install pyenv
Wenn Sie den neuesten Entwicklungsleiter von Pyenv und nicht die neueste Version installieren möchten (und auf aktualisieren) möchten, werden Sie stattdessen ausgeführt:
brew install pyenv --head
Befolgen Sie dann den Rest der Schritte nach der Installation, beginnend mit der Einrichtung Ihrer Shell-Umgebung für PyEnv.
Optional. Um die Warnung von brew doctor
zu beheben , gibt es außerhalb Ihres Systems oder Homebrew -Verzeichnisses "" Konfigurationsskripte "."
Wenn Sie Homebrew -Formeln aus der Quelle erstellen möchten, die gegen Python wie Tkinter oder Numpy verlinken (dies ist im Allgemeinen nur der Fall, wenn Sie Entwickler einer solchen Formel sind oder wenn Sie eine EOL -Version von macOS haben, für die vorgefertigte Flaschen sind nicht mehr zur Verfügung gestellt und Sie verwenden eine solche Formel).
Um zu vermeiden, dass sie versehentlich mit einem von Pyenv bereitgestellten Python verbunden sind, fügen Sie die folgende Zeile in die Konfiguration Ihrer interaktiven Shell hinzu:
Bash/ZSH:
alias brew= ' env PATH="${PATH//$(pyenv root)/shims:/}" brew '
Fisch:
alias brew= " env PATH=(string replace (pyenv root)/shims '' "$ PATH " ) brew "
Pyenv unterstützt Windows nicht offiziell und funktioniert in Windows außerhalb des Windows -Subsystems für Linux nicht. Darüber hinaus sind die von es installierten Pythons auch keine nativen Windows-Versionen, sondern Linux-Versionen, die in einer virtuellen Maschine ausgeführt werden-sodass Sie keine Windows-spezifischen Funktionen erhalten.
Wenn Sie in Windows sind, empfehlen wir, @Kirankotaris pyenv-win
Gabel zu verwenden-die native Windows Python-Versionen installiert.
Das folgende Setup sollte für die überwiegende Mehrheit der Benutzer für gemeinsame Anwendungsfälle funktionieren. Weitere Informationen und weitere Konfigurationsoptionen finden Sie unter erweiterte Konfiguration.
Stock -Bash -Startdateien variieren stark zwischen Verteilungen, in denen sie unter welchen Umständen in welcher Reihenfolge und welcher zusätzlichen Konfiguration sie ausführen. Der zuverlässigste Weg, PyEnv in allen Umgebungen zu erhalten, besteht darin, PyEnv -Konfigurationsbefehle sowohl an .bashrc
(für interaktive Shells) als auch an die Profildatei anzuhängen, die das Bash verwendet würde (für Anmeldungsschalen).
Fügen Sie zunächst die Befehle zu ~/.bashrc
hinzu, indem Sie Folgendes in Ihrem Terminal ausführen:
echo ' export PYENV_ROOT="$HOME/.pyenv" ' >> ~ /.bashrc
echo ' command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" ' >> ~ /.bashrc
echo ' eval "$(pyenv init -)" ' >> ~ /.bashrc
Wenn Sie ~/.profile
, ~/.bash_profile
oder ~/.bash_login
haben, fügen Sie dort auch die Befehle hinzu. Wenn Sie keine davon haben, erstellen Sie ein ~/.profile
und fügen Sie dort die Befehle hinzu.
~/.profile
hinzufügen: echo ' export PYENV_ROOT="$HOME/.pyenv" ' >> ~ /.profile
echo ' command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" ' >> ~ /.profile
echo ' eval "$(pyenv init -)" ' >> ~ /.profile
~/.bash_profile
hinzufügen: echo ' export PYENV_ROOT="$HOME/.pyenv" ' >> ~ /.bash_profile
echo ' [[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH" ' >> ~ /.bash_profile
echo ' eval "$(pyenv init -)" ' >> ~ /.bash_profile
Bash -Warnung : Es gibt einige Systeme, in denen die BASH_ENV
-Variable so konfiguriert ist, dass sie auf .bashrc
verweist. In solchen Systemen sollten Sie mit ziemlicher Sicherheit die eval "$(pyenv init -)"
in .bash_profile
und nicht in .bashrc
einsetzen. Andernfalls können Sie ein seltsames Verhalten beobachten, wie z. B. pyenv
in eine unendliche Schleife. Weitere Informationen finden Sie in #264.
echo ' export PYENV_ROOT="$HOME/.pyenv" ' >> ~ /.zshrc
echo ' [[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH" ' >> ~ /.zshrc
echo ' eval "$(pyenv init -)" ' >> ~ /.zshrc
Wenn Sie PyEnv auch in nichtinteraktiven Anmeldeberaten erhalten möchten, fügen Sie auch die Befehle zu ~/.zprofile
oder ~/.zlogin
hinzu.
Wenn Sie FISH 3.2.0 oder neuer haben, führen Sie dies interaktiv aus:
set -Ux PYENV_ROOT $HOME /.pyenv
fish_add_path $PYENV_ROOT /bin
Führen Sie ansonsten den Snippet unten aus:
set -Ux PYENV_ROOT $HOME /.pyenv
set -U fish_user_paths $PYENV_ROOT /bin $fish_user_paths
Fügen Sie dies nun zu ~/.config/fish/config.fish
hinzu:
pyenv init - | source
Damit die PATH
wirksam werden müssen.
exec " $SHELL "
Installieren Sie Python Build -Abhängigkeiten, bevor Sie versuchen, eine neue Python -Version zu installieren.
Sie können jetzt mit Pyenv beginnen.
Wenn Sie von Pyenv Version 2.0.x-2.2.x aktualisiert haben
Die Startlogik und die Anweisungen wurden in 2.3.0 Einfachheit halber aktualisiert. Das vorherige, kompliziertere Konfigurationsschema für 2.0.0-2.2.5 funktioniert noch.
PYENV_ROOT
um auf den Pfad zu verweisen, auf dem Pyenv seine Daten speichert. $HOME/.pyenv
ist der Standard. Wenn Sie Pyenv über Git Checkout installiert haben, empfehlen wir, es an denselben Ort zu setzen, an dem Sie es kloniert haben.pyenv
hinzu, der auf Ihren PATH
ausgestattet ist, wenn er noch nicht vorhanden isteval "$(pyenv init -)"
aus, um pyenv
als Shellfunktion in Ihre Shell zu installieren, SHIPS UND AUTOCOMPORTION zu aktiviereneval "$(pyenv init --path)"
stattdessen ausführen, um nur Unterschriften ohne Shell -Integration zu aktivieren Um zusätzliche Python -Versionen zu installieren, verwenden Sie pyenv install
.
Zum Beispiel zum Herunterladen und Installieren von Python 3.10.4 ausführen:
pyenv install 3.10.4
Ausführen pyenv install -l
gibt die Liste aller verfügbaren Versionen.
Hinweis: Wenn Sie Probleme haben, eine Python -Version zu installieren, besuchen Sie bitte die Wiki -Seite über gemeinsame Build -Probleme.
Hinweis: Wenn Sie Proxy zum Download verwenden möchten, legen Sie bitte die Variablen http_proxy
und https_proxy
um.
HINWEIS: Wenn Sie einen schnelleren Dolmetscher auf Kosten längerer Bauzeiten möchten, finden Sie in Bauen für maximale Leistung in Python-Build's Readme.
Alle Pyenv -Unterbefehle außer uninstall
lösen automatisch vollständige Präfixe in die neueste Version in der entsprechenden Versionslinie.
pyenv install
wählt die neueste bekannte Version aus, während andere Unterbefehle die neueste installierte Version auswählen.
ZB installieren und dann zur neuesten Version 3.10 umsteigen:
pyenv install 3.10
pyenv global 3.10
Sie können pyenv latest -k <prefix>
ausführen, um zu sehen, wie pyenv install
ein bestimmtes Präfix auflöst, oder pyenv latest <prefix>
um zu sehen, wie andere Unterbefehle es beheben würden.
Einzelheiten finden Sie in der pyenv latest
.
Für die folgenden Python-Veröffentlichungen wendet PyEnv von benutzerbereitete Patches an, die einige neuere Umgebungen unterstützen. Obwohl wir diese Patches nicht aktiv beibehalten, kann man davon ausgehen, dass sie weiter arbeiten, bis es weiter arbeitet, bis es in einer späteren Version dieser Umgebungen weitere inkompatible Änderungen gibt.
Um einen pyenv-installierten Python als zu verwendende Python auszuwählen, führen Sie einen der folgenden Befehle aus:
pyenv shell <version>
- Wählen Sie nur für die aktuelle Shell -Sitzung auspyenv local <version>
- Wählen Sie automatisch, wann immer Sie sich im aktuellen Verzeichnis (oder in den Unterverzeichnissen) befinden.pyenv global <version>
- Wählen Sie global für Ihr Benutzerkonto ausZB auswählen, um die oben genannten neu installierten Python 3.10.4 als bevorzugte Version auszuwählen:
pyenv global 3.10.4
Wenn Sie nun python
, pip
usw. aufrufen, wird eine ausführbare Datei aus der Pyenv-bereitgestellten 3.10.4-Installation anstelle des Systems Python ausgeführt.
Die Verwendung von " system
" als Versionsname würde die Auswahl auf Ihr systembedingter Python zurücksetzen.
Weitere Informationen zur Funktionsweise der Auswahl und weiteren Informationen zu ihrer Verwendung finden Sie unter Verständnis von SHIPS und Verständnis der Python -Versionsauswahl.
Mit der Zeit sammeln Sie Python -Versionen im Verzeichnis $(pyenv root)/versions
.
Um alte Python -Versionen zu entfernen, verwenden Sie pyenv uninstall <versions>
.
Alternativ können Sie das Verzeichnis der Version, die Sie entfernen möchten, einfach rm -rf
. Sie finden das Verzeichnis einer bestimmten Python -Version mit dem Befehl pyenv prefix
, z. B. pyenv prefix 2.6.8
. Beachten Sie jedoch, dass Plugins zusätzliche Vorgänge in der Deinstallation ausführen können, die Sie auch von Hand ausführen müssen. EG Pyenv-virtualenv entfernt auch alle virtuellen Umgebungen, die mit der zu deinstallierten Version verknüpft sind.
Führen Sie pyenv commands
aus, um eine Liste aller verfügbaren Unterbefehle zu erhalten. Führen Sie einen Unterbefehl mit --help
aus, um Hilfe zu erhalten, oder sehen Sie sich die Befehle an.
Beachten Sie, dass die von Ihnen installierten Pyenv -Plugins möglicherweise ihre eigenen Unterbefehle hinzufügen.
Wenn Sie PyEnV mit Homebrew installiert haben, werden Sie mit: Upgrade mit:
brew upgrade pyenv
Um von einer Veröffentlichung auf den neuesten Entwicklungsleiter von Pyenv umzusteigen, verwenden Sie:
brew uninstall pyenv
brew install pyenv --head
Dann können Sie es wie gewohnt mit brew upgrade pyenv
aktualisieren.
Wenn Sie Pyenv mit Pyenv-Installer installiert haben, haben Sie wahrscheinlich das Pyenv-Update-Plugin, mit dem PyEnv und alle installierten Plugins aktualisiert werden sollen:
pyenv update
Wenn Sie PyEnV mithilfe von PyEnv-Installer oder Git Checkout installiert haben, können Sie Ihre Installation jederzeit mit Git aktualisieren.
Verwenden Sie git pull
: Um auf die neueste Entwicklungsversion von Pyenv zu upgraden:
cd $( pyenv root )
git pull
Um auf eine bestimmte Veröffentlichung von PyEnV zu aktualisieren, lesen Sie das entsprechende Tag:
cd $( pyenv root )
git fetch
git tag
git checkout v0.1.0
Die Einfachheit von Pyenv erleichtert es einfach, vorübergehend zu deaktivieren oder aus dem System zu deinstallieren.
Um die Pyenv -Verwaltung Ihrer Python -Versionen zu deaktivieren , entfernen Sie einfach die pyenv init
-Aufrufe aus Ihrer Shell -Startkonfiguration. Dies wird das Verzeichnis von Pyenv SHIMS aus PATH
entfernt, und zukünftige Aufrufe wie python
werden die System -Python -Version wie vor Pyenv ausführen.
pyenv
ist in der Befehlszeile weiterhin zugänglich, aber Ihre Python -Apps werden nicht vom Versionsschalter betroffen.
Um PyEnv vollständig zu deinstallieren , entfernen Sie alle PyEnV -Konfigurationslinien aus Ihrer Shell -Startkonfiguration und entfernen Sie dann das Root -Verzeichnis. Dadurch werden alle Python -Versionen gelöscht , die unter dem $(pyenv root)/versions/
Verzeichnissen installiert wurden:
rm -rf $( pyenv root )
Wenn Sie PyEnV als letzten Schritt mit einem Paketmanager installiert haben, führen Sie die PyEnV -Paketentfernung durch. Zum Beispiel für Homebrew:
brew uninstall pyenv
PyEnV bietet eine einfache Möglichkeit, seine Funktionalität mit Plugins zu erweitern und anzupassen - so einfach wie das Erstellen eines Plugin -Verzeichnisses und das Ablegen eines Shell -Skripts auf einem bestimmten Unterfaden mit der zusätzlichen Logik, die Sie in bestimmten Momenten ausgeführt werden müssen.
Die Hauptidee ist, dass die meisten Dinge, die Sie unter $PYENV_ROOT/<whatever>
auch immer> Sie unter $PYENV_ROOT/plugins/your_plugin_name/<whatever>
weins setzen können.
Sehen Sie Plugins im Wiki zum Installieren und Verwenden von Plugins sowie einen Katalog einiger nützlicher vorhandener Plugins für gemeinsame Anforderungen.
Siehe Authoring -Plugins im Wiki zum Schreiben Ihrer eigenen Plugins.
Pyenv fasst Python -Befehle mit hoher Ebene mithilfe von Shim Executables ab, die in Ihren PATH
injiziert wurden, welche Python -Version von Ihrer Anwendung angegeben wurde, und übergibt Ihre Befehle an die richtige Python -Installation.
Wenn Sie einen Befehl wie python
oder pip
, Ihre Shell (Bash / ZSHRC / ...) ausführen, sucht Sie über eine Liste von Verzeichnissen, um eine ausführbare Datei mit diesem Namen zu finden. Diese Liste der Verzeichnisse lebt in einer Umgebungsvariablen, die als PATH
bezeichnet wird, wobei jedes Verzeichnis in der Liste von einem Dickdarm getrennt ist:
/usr/local/bin:/usr/bin:/bin
Die Verzeichnisse im PATH
werden von links nach rechts durchsucht, sodass eine übereinstimmende ausführbare Datei in einem Verzeichnis zu Beginn der Liste am Ende Vorrang vor einem anderen hat. In diesem Beispiel wird das Verzeichnis /usr/local/bin
zuerst durchsucht, dann /usr/bin
, dann /bin
.
Pyenv arbeitet, indem er ein Verzeichnis von SHIPS an der Vorderseite Ihres PATH
einfügt:
$(pyenv root)/shims:/usr/local/bin:/usr/bin:/bin
Durch einen Prozess namens Rehashing behält Pyenv SHILS in diesem Verzeichnis bei, um jeden Python -Befehl über jede installierte Version von Python zu entsprechen - python
, pip
usw.
SHIPS sind leichte ausführbare Ausführbarungen, die Ihren Befehl einfach an Pyenv übergeben. Wenn Sie also beispielsweise Pyenv installiert haben, wird Ihr Betriebssystem pip
Folgendes ausführen:
PATH
nach einer ausführbaren Datei namens pip
pip
zu Beginn Ihres PATH
pip
aus, der wiederum den Befehl an Pyenv übergibtWenn Sie einen Shim ausführen, bestimmt Pyenv, welche Python -Version in dieser Reihenfolge aus den folgenden Quellen verwendet werden soll:
Die Umgebungsvariable PYENV_VERSION
(falls angegeben). Sie können den Befehl pyenv shell
verwenden, um diese Umgebungsvariable in Ihrer aktuellen Shell -Sitzung festzulegen.
Die anwendungsspezifische .python-version
Datei im aktuellen Verzeichnis (falls vorhanden). Sie können die .python-version
Datei des aktuellen Verzeichnisses mit dem Befehl pyenv local
ändern.
Die erste .python-version
wurde (falls vorhanden) durch die Suche nach jedem übergeordneten Verzeichnis gefunden, bis er das Stammpunkt Ihres Dateisystems erreicht hat.
Die Global $(pyenv root)/version
. Sie können diese Datei mit dem pyenv global
Befehl ändern. Wenn die globale Versionsdatei nicht vorhanden ist, geht Pyenv davon aus, dass Sie das "System" Python verwenden möchten (siehe unten).
Ein spezielles Versionsname " system
" bedeutet, nach dem PATH
-Pfadeintrag auf PATH
zu verwenden (mit anderen Worten, was auch immer ausgeführt werden würde, wenn Pyenv SHIPS nicht auf dem PATH
wäre). Beachten Sie, dass Pyenv diese Installationen außerhalb seiner Kontrolle berücksichtigt und nicht versucht, sie in irgendeiner Weise zu inspizieren oder zu unterscheiden. Also zB, wenn Sie in MacOS sind und Python 3.8.9 und Homebrew-installiertes Python 3.9.12 und 3.10.2 haben-für Pyenv ist dies immer noch eine einzelne " system
" -Version, und was auch immer, der erste auf PATH
unter dem von Ihnen angegebenen ausführbaren Namen wird ausgeführt.
Hinweis: Sie können mehrere Versionen gleichzeitig aktivieren, einschließlich mehrerer Versionen von Python2 oder Python3 gleichzeitig. Dies ermöglicht eine parallele Verwendung von Python2 und Python3 und ist mit Tools wie tox
erforderlich. Zum Beispiel, um Pyenv zu unterweisen, zuerst Ihr System Python und Python3 (z. B. 2,7.9 und 3.4.2) zu verwenden pyenv install
aber auch Python 3.3.6, 3.2.1 und 2.5.2 verfügbar. Versionen und setzen Sie pyenv global system 3.3.6 3.2.1 2.5.2
. Dann können Sie eine dieser Versionen mit einem geeigneten Namen pythonX
oder pythonX.Y
aufrufen. Sie können auch mehrere Versionen in einer .python-version
Datei von Hand angeben, die durch Newlines getrennt sind. Zeilen, die mit einer #
beginnen, werden ignoriert.
pyenv which <command>
zeigt, welche echte ausführbare Datei ausgeführt wird, wenn Sie <command>
über einen Shim aufrufen. ZB, wenn Sie 3.3.6, 3.2.1 und 2.5.2 installiert sind, von denen 3.3.6 und 2.5.2 ausgewählt sind und Ihr System Python 3.2.5 ist, pyenv which python2.5
$(pyenv root)/versions/2.5.2/bin/python2.5
anzeigen sollte $(pyenv root)/versions/2.5.2/bin/python2.5
, pyenv which python3
$(pyenv root)/versions/3.3.6/bin/python3
und pyenv which python3.2
-Pfad zu Ihrem System Python aufgrund des Herbsts (siehe unten).
SHIPS fällt auch auf einen weiteren PATH
auf, wenn die entsprechende ausführbare Datei in keiner der ausgewählten Python -Installationen vorhanden ist. Auf diese Weise können Sie alle Programme verwenden, die an anderer Stelle auf dem System installiert sind, solange sie nicht von einer ausgewählten Python -Installation beschattet werden.
Sobald Pyenv ermittelt hat, welche Version von Python Ihre Anwendung angegeben hat, gibt er den Befehl entlang der entsprechenden Python -Installation weiter.
Jede Python -Version ist in ihrem eigenen Verzeichnis unter $(pyenv root)/versions
installiert.
Zum Beispiel können diese Versionen installiert werden:
$(pyenv root)/versions/2.7.8/
$(pyenv root)/versions/3.4.2/
$(pyenv root)/versions/pypy-2.4.0/
In Bezug auf Pyenv sind Versionsnamen einfach Verzeichnisse unter $(pyenv root)/versions
.
Überspringen Sie diesen Abschnitt, es sei denn, Sie müssen wissen, was jede Zeile in Ihrem Shell -Profil tut.
Siehe auch den Abschnitt Umgebungsvariablen für die Umgebungsvariablen, die das Verhalten von Pyenv steuern.
pyenv init
ist der einzige Befehl, der die Ladelinie des Ladens zusätzlicher Befehle in Ihre Shell überschreitet. Einige von Ihnen kommen aus RVM und sind möglicherweise gegen diese Idee. Hier ist, was eval "$(pyenv init -)"
tatsächlich tut:
Richtet den Sehweg ein. Dies ermöglicht es PyEnv, die Aufrufe von python
, pip
usw. transparent abzufangen und umzuleiten. Es präsentiert $(pyenv root)/shims
auf Ihren $PATH
. Es löscht auch alle anderen Instanzen von $(pyenv root)/shims
auf PATH
, mit eval "$(pyenv init -)"
mehrmals aufgerufen werden kann, ohne doppelte PATH
zu erhalten.
Installiert Autocompletion. Dies ist völlig optional, aber ziemlich nützlich. Beschaffung von $(pyenv root)/completions/pyenv.bash
wird das einrichten. Es gibt auch Abschlüsse für ZSH und Fisch.
Wiederholungsscheiben. Von Zeit zu Zeit müssen Sie Ihre Shim -Dateien wieder aufbauen. Wenn Sie dies auf Init tun, stellt sicher, dass alles auf dem neuesten Stand ist. Sie können pyenv rehash
jederzeit manuell ausführen.
Installiert pyenv
in die Stromschale als Shell -Funktion. Dieses Bit ist ebenfalls optional, ermöglicht es PyEnV und Plugins, Variablen in Ihrer aktuellen Hülle zu ändern. Dies ist erforderlich, damit einige Befehle wie pyenv shell
funktionieren. Der SH -Dispatcher macht nichts Verrücktes wie cd
Override oder hackt Ihre Shell -Eingabeaufforderung, aber wenn Sie aus irgendeinem Grund pyenv
als ein echtes Skript als eine Shell -Funktion sein müssen, können Sie es sicher überspringen.
eval "$(pyenv init --path)"
macht nur Artikel 1 und 3.
Um genau zu sehen, was für sich selbst unter der Motorhaube passiert, laufen Sie pyenv init -
-oder pyenv init --path
.
eval "$(pyenv init -)"
soll bei jedem interaktiven Shell -Startup (einschließlich verschachtelter Shells -z.
eval "$(pyenv init --path)"
kann anstelle von eval "$(pyenv init -)"
verwendet werden, um nur Scheiben ohne Shell -Integration zu aktivieren. Es kann auch verwendet werden, um Scheiben auf die Vorderseite des PATH
zu stoßen, nachdem eine andere Logik Sachen auf PATH
vorgeschlagen hat, die Pyenvs Scheiben beschatten können.
~/.profile
die Verzeichnisse von Bin-User bin
-Verzeichnissen auf PATH
nachdem sie ~/.bashrc
bezogen wurden. Dies erfordert das Anhängen eines pyenv init
Aufrufs an ~/.profile
sowie ~/.bashrc
in diesen Verteilungen, da die PIP des Systems ausführbare Module für Module platziert, die von einem Nicht-Root-Benutzer in diese Bin- bin
-Verzeichnisse pro Benutzer installiert wurden. Wenn Sie pyenv init
und SHIPS nicht verwenden möchten, können Sie immer noch von der Fähigkeit von Pyenv profitieren, Python -Versionen für Sie zu installieren. Führen Sie einfach pyenv install
aus und Sie finden Versionen, die in $(pyenv root)/versions
installiert sind.
Sie können sie nach Bedarf manuell ausführen oder symlinden, oder Sie können pyenv exec <command>
verwenden, wann immer Sie möchten, dass <command>
von der Version von PyEnv wie derzeit konfiguriert werden.
pyenv exec
arbeitet, indem $(pyenv root)/versions/<selected version>/bin
in die Umgebung <command>
zu PATH
vorgegangen ist, wie das, was z. B. RVM tut.
Sie können beeinflussen, wie Pyenv mit den folgenden Umgebungsvariablen arbeitet:
Name | Standard | Beschreibung |
---|---|---|
PYENV_VERSION | Gibt die zu verwendende Python -Version an. Siehe auch pyenv shell | |
PYENV_ROOT | ~/.pyenv | Definiert das Verzeichnis, in dem sich Python -Versionen und Sehungen befinden. Siehe auch pyenv root |
PYENV_DEBUG | Gibt Debug -Informationen aus. Auch als: pyenv --debug <subcommand> | |
PYENV_HOOK_PATH | Siehe Wiki | Darms getrennte Liste der Pfade suchte nach Pyenv-Hooks. |
PYENV_DIR | $PWD | Verzeichnis, um nach .python-version Dateien zu suchen. |
Siehe auch spezielle Umgebungsvariablen in Python-Build's ReadMe für Umgebungsvariablen, mit denen das Build angepasst werden kann.
Der Pyenv -Quellcode wird auf GitHub gehostet. Es ist sauber, modular und leicht zu verstehen, auch wenn Sie kein Shell -Hacker sind.
Tests werden mit Fledermäusen ausgeführt:
bats test
bats/test/<file>.bats
Fühlen Sie sich frei, Pull -Anfragen und Dateifehlern zum Problem Tracker einzureichen.
Weitere Informationen zum Senden von Änderungen finden Sie unter Beitrags.md.
Siehe ChangeLog.md.
Die MIT -Lizenz