Pyenv-VirtualEnv est un plugin PYENV qui fournit des fonctionnalités pour gérer les environnements VirtualEnvs et Conda pour Python sur des systèmes de type UNIX.
(Remarque: si vous êtes un utilisateur existant de VirtualEnvWrapper et que vous l'aimez, Pyenv-VirtualEnvWrapper peut vous aider (en outre) à gérer vos virtualenvs.)
Cela installera la dernière version de développement de Pyenv-VirtualEnv dans le répertoire $(pyenv root)/plugins/pyenv-virtualenv
.
Remarque importante: Si vous avez installé PYENV dans un répertoire non standard, assurez-vous de cloner ce référentiel dans le répertoire «Plugins» de partout où vous avez installé.
De l'intérieur de ce répertoire, vous pouvez:
git pull
pour télécharger les derniers modifications.Découvrez Pyenv-VirtualEnv dans le répertoire du plugin
git clone https://github.com/pyenv/pyenv-virtualenv.git $( pyenv root ) /plugins/pyenv-virtualenv
Pour la coquille de poisson:
git clone https://github.com/pyenv/pyenv-virtualenv.git (pyenv root)/plugins/pyenv-virtualenv
(Facultatif) Ajouter pyenv virtualenv-init
à votre shell pour activer l'activation automatique de VirtualEnvs. C'est entièrement facultatif mais assez utile. Voir "Activer VirtualEnv" ci-dessous.
echo ' eval "$(pyenv virtualenv-init -)" ' >> ~ /.bashrc
Remarque de coquille de poisson : ajoutez-le à votre ~/.config/fish/config.fish
status --is-interactive ; and pyenv virtualenv-init - | source
Zsh Remarque : Modifiez votre fichier ~/.zshrc
au lieu de ~/.bashrc
.
Redémarrez votre coquille pour permettre à Pyenv-VirtualEnv
exec " $SHELL "
Les utilisateurs de MacOS peuvent installer Pyenv-VirtualEnv avec le Homebrew Package Manager. Cela vous donnera accès à la commande pyenv-virtualenv
. Si vous avez installé PYENV, vous pourrez également utiliser la commande pyenv virtualenv
.
Il s'agit de la méthode d'installation recommandée si vous avez installé PYENV avec Homebrew.
brew install pyenv-virtualenv
Ou, si vous souhaitez installer la dernière version de développement:
brew install --HEAD pyenv-virtualenv
Après l'installation, vous devrez toujours faire des étapes de configuration de la coque Pyenv puis ajouter
eval " $( pyenv virtualenv-init - ) "
dans le fichier .rc
de votre shell (comme indiqué dans les mises en garde). Vous n'aurez jamais à le faire une seule fois.
pyenv virtualenv
avec pyenv Pour créer un VirtualEnv pour la version Python utilisée avec PYENV, exécutez pyenv virtualenv
, en spécifiant la version Python que vous souhaitez et le nom du répertoire VirtualEnv. Par exemple,
pyenv virtualenv 2.7.10 my-virtual-env-2.7.10
Créera un virtualenv basé sur Python 2.7.10 sous $(pyenv root)/versions
dans un dossier appelé my-virtual-env-2.7.10
.
pyenv virtualenv
transmet toutes les options de la commande sous-jacente qui crée réellement l'environnement virtuel ( conda
, virtualenv
ou python -m venv
). Voir la sortie de pyenv virtualenv --help
pour plus de détails.
S'il n'y a qu'un seul argument donné à pyenv virtualenv
, le VirtualEnv sera créé avec le nom donné basé sur la version Pyenv Python actuelle.
$ pyenv version
3.4.3 (set by /home/yyuu/.pyenv/version)
$ pyenv virtualenv venv34
pyenv virtualenvs
vous montre la liste des environnements VirtualEnvs et conda
existants.
$ pyenv shell venv34
$ pyenv virtualenvs
miniconda3-3.9.1 (created from /home/yyuu/.pyenv/versions/miniconda3-3.9.1)
miniconda3-3.9.1/envs/myenv (created from /home/yyuu/.pyenv/versions/miniconda3-3.9.1)
2.7.10/envs/my-virtual-env-2.7.10 (created from /home/yyuu/.pyenv/versions/2.7.10)
3.4.3/envs/venv34 (created from /home/yyuu/.pyenv/versions/3.4.3)
my-virtual-env-2.7.10 (created from /home/yyuu/.pyenv/versions/2.7.10)
* venv34 (created from /home/yyuu/.pyenv/versions/3.4.3)
Il y a deux entrées pour chaque VirtualEnv, et la plus courte est juste un lien de symbolique.
Certains outils externes (par exemple Jedi) pourraient vous obliger à activate
les environnements VirtualEnv et conda
.
If eval "$(pyenv virtualenv-init -)"
is configured in your shell, pyenv-virtualenv
will automatically activate/deactivate virtualenvs on entering/leaving directories which contain a .python-version
file that contains the name of a valid virtual environment as montré dans la sortie de pyenv virtualenvs
(par exemple, venv34
ou 3.4.3/envs/venv34
dans l'exemple ci-dessus). Les fichiers .python-version
sont utilisés par PYENV pour désigner les versions Python locaux et peuvent être créées et supprimées avec la commande pyenv local
.
Vous pouvez également activer et désactiver un pyenv virtualenv manuellement:
pyenv activate < name >
pyenv deactivate
La suppression des répertoires dans $(pyenv root)/versions
et $(pyenv root)/versions/{version}/envs
supprimera le virtualenv, ou vous pouvez exécuter:
pyenv uninstall my-virtual-env
Vous pouvez également supprimer VirtualEnvs existant en utilisant la commande virtualenv-delete
, par exemple, vous pouvez exécuter:
pyenv virtualenv-delete my-virtual-env
Cela supprimera VirtualEnv appelé my-virtual-env
.
Un module VENV est disponible pour CPYTHON 3.3 et plus récent. Il fournit un module exécutable venv
qui est le successeur de virtualenv
et distribué par défaut.
pyenv-virtualenv
utilise python -m venv
s'il est disponible et la commande virtualenv
n'est pas disponible.
Vous pouvez gérer les environnements conda
par conda create
de la même manière que les installations Anaconda / MiniConda standard. Pour utiliser ces environnements, vous pouvez utiliser pyenv activate
et pyenv deactivate
.
$ pyenv version
miniconda3-3.9.1 (set by /home/yyuu/.pyenv/version)
$ conda env list
# conda environments:
#
myenv /home/yyuu/.pyenv/versions/miniconda3-3.9.1/envs/myenv
root * /home/yyuu/.pyenv/versions/miniconda3-3.9.1
$ pyenv activate miniconda3-3.9.1/envs/myenv
discarding /home/yyuu/.pyenv/versions/miniconda3-3.9.1/bin from PATH
prepending /home/yyuu/.pyenv/versions/miniconda3-3.9.1/envs/myenv/bin to PATH
$ python --version
Python 3.4.3 :: Continuum Analytics, Inc.
$ pyenv deactivate
discarding /home/yyuu/.pyenv/versions/miniconda3-3.9.1/envs/myenv/bin from PATH
Si conda
est disponible, pyenv virtualenv
l'utilisera pour créer un environnement par conda create
.
$ pyenv version
miniconda3-3.9.1 (set by /home/yyuu/.pyenv/version)
$ pyenv virtualenv myenv2
$ conda env list
# conda environments:
#
myenv /home/yyuu/.pyenv/versions/miniconda3-3.9.1/envs/myenv
myenv /home/yyuu/.pyenv/versions/miniconda3-3.9.1/envs/myenv2
root * /home/yyuu/.pyenv/versions/miniconda3-3.9.1
Vous pouvez utiliser une version comme miniconda3-3.9.1/envs/myenv
pour spécifier l'environnement conda
en tant que version dans PYENV.
$ pyenv version
miniconda3-3.9.1 (set by /home/yyuu/.pyenv/version)
$ pyenv shell miniconda3-3.9.1/envs/myenv
$ which python
/home/yyuu/.pyenv/versions/miniconda3-3.9.1/envs/myenv/bin/python
Vous pouvez définir certaines variables d'environnement pour contrôler Pyenv-VirtualEnv.
PYENV_VIRTUALENV_CACHE_PATH
, si défini, spécifie un répertoire à utiliser pour la mise en cache de fichiers de package téléchargés.VIRTUALENV_VERSION
, si défini, force Pyenv-VirtualEnv pour installer la version souhaitée de VirtualEnv. Si virtualenv
n'a pas été installé, Pyenv-VirtualEnv essaiera d'installer la version donnée de VirtualEnv.GET_PIP
, si set et venv
sont préférés à virtualenv
, utilisez get_pip.py
à partir de l'emplacement spécifié.GET_PIP_URL
, si set et venv
sont préférés à virtualenv
, téléchargez get_pip.py
à partir de l'URL spécifiée.PIP_VERSION
, si SET et venv
est préféré à virtualenv
, installez la version spécifiée de PIP.PYENV_VIRTUALENV_VERBOSE_ACTIVATE
, s'il est défini, affiche des sorties verbales sur l'activation et la désactivationPYENV_VIRTUALENV_PROMPT
, si défini, permet aux utilisateurs de personnaliser comment pyenv-virtualenv
modifie leur invite de shell. L'invite par défaut ("(VENV)") est écrasée avec tout texte spécifié par l'utilisateur. Spécifiez l'emplacement du nom de l'environnement virtuel avec la chaîne {venv}
. Par exemple, la chaîne d'invite par défaut serait ({venv})
. Voir Changelog.md.
(La licence MIT)
L'autorisation est accordée gratuitement par la présente à toute personne qui obtient une copie de ce logiciel et des fichiers de documentation associés (le "logiciel"), pour traiter le logiciel sans restriction, y compris sans limiter les droits d'utilisation, de copier, de modifier, de fusionner , publier, distribuer, sous-licencier et / ou vendre des copies du logiciel, et pour permettre aux personnes à qui le logiciel est fourni pour le faire, sous réserve des conditions suivantes:
L'avis de droit d'auteur ci-dessus et le présent avis d'autorisation sont inclus dans toutes les copies ou des parties substantielles du logiciel.
Le logiciel est fourni "tel quel", sans garantie d'aucune sorte, express ou implicite, y compris, mais sans s'y limiter, les garanties de qualité marchande, d'adéquation à un usage particulier et de non-contrefaçon. En aucun cas, les auteurs ou les titulaires de droits d'auteur ne seront pas responsables de toute réclamation, dommage ou autre responsabilité, que ce soit dans une action de contrat, de délit ou autre, découlant de, hors du logiciel ou de l'utilisation ou d'autres transactions dans le LOGICIEL.