[PYTHON] Introduction du wrapper Virtualenv

Présentation de Virtualenv wrapper, qui facilite l'utilisation des fonctions de virtualenv qui crée un environnement unique pour Python, et comment l'utiliser sur Mac OS X.

Installation et configuration de Virtualenvwrapper

Avantages de Virtualenvwrapper

Virtualenv seul est assez facile à utiliser, mais avec l'introduction de wrappers

Je pense que cela vaut la peine d'être ajouté car il y a des mérites tels que. Prend également en charge la série Python 3.x.

Installation

Peut être déposé depuis pip. Puisqu'il s'agit d'un outil qui gère chaque environnement, le wrapper lui-même est installé globalement.

$ sudo pip install virtualenvwrapper

Réglage

Il n'est pas prêt à être utilisé simplement en l'installant. Ajoutez les paramètres suivants au shell de connexion (* 1).

### Virtualenvwrapper
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
    export WORKON_HOME=$HOME/.virtualenvs
    source /usr/local/bin/virtualenvwrapper.sh
fi

C'est comme tu le vois

Si vous avez /usr/local/bin/virtualenvwrapper.sh (= si virtualenvwrapper est installé), définissez WORKON_HOME pour exécuter virtualenvwrapper.sh.

Puisque le PATH de virtualenvwrapper.sh dépend de l'environnement

$ which virtualenvwrapper.sh

Vérifier avec. WORKON_HOME spécifie le dossier dans lequel chaque environnement créé par virtualenv est stocké. Si vous n'avez pas encore créé d'environnement, vous pouvez laisser les paramètres ci-dessus.

(* 1) .bashrc, .bash_profile, .profile, etc. Dans mon cas, j'utilise zsh, donc c'est .zshrc.


Comment utiliser

Consultez la liste des environnements

Si vous avez déjà créé un environnement, vous pouvez voir la liste avec la commande work on.

$ workon                                                                                   
sandbox2
sandbox3
Créer un environnement

Il peut être créé avec mkvirtualenv [nom de l'environnement].

$ mkvirtualenv --python=/usr/local/bin/python3 testdayo
    
Running virtualenv with interpreter /usr/local/bin/python3
Using base prefix '/usr/local/Cellar/python3/3.3.2/Frameworks/    Python.framework/Versions/3.3'
New python executable in testdayo/bin/python3.3
Also creating executable in testdayo/bin/python
    
Installing Setuptools...done.
Installing Pip...done.
    
$(testdayo)

Comme avec virtualenv seul, vous pouvez spécifier le python à utiliser avec l'option --python. Après l'exécution, un environnement unique appelé testdayo est créé et passe automatiquement de l'environnement global à cet environnement unique.

Assurez-vous que l'environnement virtuel est créé dans le répertoire spécifié par WORKON_HOME ci-dessus.

Environnement de commutation

Vous pouvez basculer vers l'environnement unique créé avec workon [nom de l'environnement]. Si vous souhaitez quitter le système (global) de l'environnement unique une fois entré, tapez la commande de désactivation.

Actuellement, j'étais dans l'environnement testdayo créé dans ↑, alors sortons avec disable.

$(testdayo) deactivate
                                                                      
$ 

Essayez à nouveau de passer à testdayo.

$ workon testdayo  
                                                                        
$(testdayo)

Si vous êtes dans un environnement unique, le nom de l'environnement est indiqué entre parenthèses, il est donc facile à comprendre.

Supprimer l'environnement

Pour supprimer l'environnement virtuel créé, quittez globalement et saisissez rmvirtualenv [nom de l'environnement].

$ rmvirtualenv testdayo
Removing testdayo...
                                                                      
$ 
crochet

Un autre avantage de l'utilisation de virtualenvwrapper est qu'il peut être décrit pour effectuer un traitement spécifique au moment de la création, de la commutation et de la suppression de l'environnement comme décrit ci-dessus. Il existe différents points de raccordement tels que la pré-activation, la prédéactivation et la post-désactivation qui exécutent un processus spécifique. Pour plus de détails, reportez-vous au document ↓

Extending Virtualenvwrapper - virtualenvwrapper

Les fichiers correspondant à ces points d'accroche

[WORKON_HOME PATH of virtualenvwrapper] / [nom de l'environnement] / bin /

Puisqu'il est sous le contrôle, il est bon d'écrire le script shell que vous voulez y exécuter. Par exemple, si vous souhaitez exécuter test.sh lors du passage à un certain environnement, le point d'accroche correspondant est postactivate.

[WORKON_HOME PATH of virtualenvwrapper] / [nom de l'environnement] / bin / postactivate

À

#!/usr/local/bin/zsh
# This hook is run after this virtualenv is activated.

source test.sh

Vous pouvez l'écrire comme. La première ligne doit correspondre à l'environnement d'exécution de votre shell (#! / Bin / bash, etc.).

Recommended Posts

Introduction du wrapper Virtualenv
Introduction de scikit-Optimize
Introduction de PyGMT
Introduction de Python
Introduction de trac (Windows + trac 1.0.10)
Introduction de ferenOS 1 (installation)
Mécanisme de pyenv et virtualenv
[Introduction à cx_Oracle] Présentation de cx_Oracle
Introduction d'activités appliquant Python
Introduction de caffe en utilisant pyenv
Introduction et astuces de mlflow.
Introduction et mise en œuvre de JoCoR-Loss (CVPR2020)
Introduction et mise en œuvre de la fonction d'activation
Introduction d'une méthode de conception de contrôleur pilotée par les données
Keras comme wrapper de Theano et TensorFlow
Introduction de ferenOS 3 (mise à jour et installation du package)
Introduction du package de dessin python pygal
Enregistrement de l'introduction de Python pour les nouveaux arrivants
Une petite introduction de fonction de niche de faiss
Introduction facile de la reconnaissance vocale avec Python
Utilisation de virtualenv, un environnement d'exécution indépendant pour Python
[EDA] Introduction de Sweetviz (comparaison avec + pandas-profiling)
Complétez tout avec Jupyter ~ Introduction de nbdev ~
Introduction facile de la série python3 et d'OpenCV3
Introduction à Scapy ① (De l'installation à l'exécution de Scapy)
[Introduction au Data Scientist] Bases de Python ♬
Introduction de l'environnement d'interface de ligne de commande SoftLayer