[PYTHON] Comment pyenv change-t-il les versions?

introduction

J'ai utilisé ** pyenv ** ** pyenv **, qui est un outil pratique pour changer de version de Python, et ** pyenv local ** sans en connaître le sens, mais soudainement [ En regardant la page pyenv (https://github.com/yyuu/pyenv#how-it-works), j'ai remarqué qu'elle expliquait soigneusement son fonctionnement. Ceci est une traduction abstraite. Puisqu'il s'agit d'une licence MIT, je ne pense pas que vous ayez besoin d'une autorisation, mais veuillez préciser quoi que ce soit.

Comment fonctionne pyenv

** pyenv ** intercepte ** les commandes python ** dans les exécutables shim (** shim executables **), décide de la version Python à exécuter et dispose de l'environnement d'installation Python approprié pour votre application. Passer. L'exécutable shim utilise le mécanisme de variable d'environnement ** PATH **.

Comprendre PATH

Lorsque vous exécutez une commande telle que ** python ** ou ** pip **, le système d'exploitation prendra une série de répertoires portant ce nom. Trouvez le fichier exécutable. La liste des répertoires est définie dans la variable d'environnement PATH avec: (deux-points) Une liste de répertoires séparés par.

** Sélection de la version Python **

Lors de l'exécution d'une simulation, pyenv vérifie la version de Python à utiliser dans l'ordre suivant.

  1. Variable d'environnement PYENV_VERSION (si définie). Pendant la session shell en cours Vous pouvez définir cette variable d'environnement à l'aide de la commande ** pyenv shell **.

  2. A. ** python ** - fichier de version dans le répertoire courant (s'il existe). Vous pouvez changer cela avec la commande ** pyenv local **.

  3. Le fichier. ** python ** - version dans le répertoire parent. Revenez à l'itinéraire un par un. l

  4. Fichier global ** ~ / .pyenv / version **. Il peut être modifié avec la commande ** pyenv global **.

  5. ** "système" ** Python s'exécute si aucune des réponses ci-dessus

Remarque: vous pouvez activer plusieurs versions à la fois, comme pyenv global 3.4.1 2.8.8. Ceci est utilisé lorsque ** python ** 2 et 3 sont utilisés en parallèle, comme [tox](https: // pypi. ** python **. Org / pypi / tox).

** Emplacement d'installation de Python **

Lorsque pyenv détermine la version, il transmet la commande à la version ** Python ** correcte. Chaque version ** Python ** est installée sous ** ~ / .pyenv / versions **. Par exemple, cela ressemble à ceci.

en conclusion

Quant à pyenv, rbenv fonctionne presque de la même manière. Ensuite, je voudrais examiner pyenv et vritualenv, rbenv et bundler.

Recommended Posts

Comment pyenv change-t-il les versions?
Comment utiliser Pyenv
Comment utiliser __dict__ en Python
mkdocs: Comment le HTML est généré
Comment débloquer Pyenv Global
Comment désinstaller pyenv lui-même
Comment afficher une liste des versions installables avec pyenv
Comment installer Anaconda avec pyenv