[PYTHON] Einführung des Virtualenv-Wrappers

Einführung von Virtualenvwrapper, mit dem die Funktionen von virtualenv, die eine einzigartige Umgebung für Python schaffen, und die grundlegende Verwendung unter Mac OS X vereinfacht werden können.

Installation und Konfiguration von Virtualenvwrapper

Vorteile von Virtualenvwrapper

Virtualenv allein ist einfach zu bedienen, jedoch mit der Einführung von Wrappern

Ich denke, dass es sich lohnt, etwas einzubringen, weil es Verdienste wie. Unterstützt auch die Python 3.x-Serie.

Installation

Kann aus Pip fallen gelassen werden. Da es sich um ein Tool handelt, das jede Umgebung verwaltet, wird der Wrapper selbst global installiert.

$ sudo pip install virtualenvwrapper

Aufbau

Es ist nicht betriebsbereit, wenn Sie es nur installieren. Fügen Sie der Login-Shell die folgenden Einstellungen hinzu (* 1).

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

Das ist so, wie du es siehst

Wenn Sie /usr/local/bin/virtualenvwrapper.sh haben (= wenn virtualenvwrapper installiert ist), setzen Sie WORKON_HOME so, dass virtualenvwrapper.sh ausgeführt wird.

Da der Pfad von virtualenvwrapper.sh von der Umgebung abhängt

$ which virtualenvwrapper.sh

Überprüfen Sie mit. WORKON_HOME gibt den Ordner an, in dem jede von virtualenv erstellte Umgebung gespeichert ist. Wenn Sie noch keine Umgebung erstellt haben, können Sie die obigen Einstellungen beibehalten.

(* 1) .bashrc, .bash_profile, .profile usw. In meinem Fall verwende ich zsh, also ist es .zshrc.


Wie benutzt man

Überprüfen Sie die Liste der Umgebungen

Wenn Sie bereits eine Umgebung erstellt haben, können Sie die Liste mit dem Befehl work on anzeigen.

$ workon                                                                                   
sandbox2
sandbox3
Umgebung erstellen

Es kann mit mkvirtualenv [Umgebungsname] erstellt werden.

$ 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)

Wie bei virtualenv allein können Sie die Python angeben, die mit der Option --python verwendet werden soll. Nach der Ausführung wird eine eindeutige Umgebung namens testdayo erstellt und automatisch von global zu dieser eindeutigen Umgebung umgeschaltet.

Stellen Sie sicher, dass die virtuelle Umgebung in dem von WORKON_HOME oben angegebenen Verzeichnis erstellt wurde.

Schaltumgebung

Sie können mit workon [Umgebungsname] zur erstellten eindeutigen Umgebung wechseln. Wenn Sie das System (global) aus der einmal eingegebenen eindeutigen Umgebung beenden möchten, geben Sie den Befehl disable ein.

Derzeit befand ich mich in der in ↑ erstellten Testdayo-Umgebung. Beenden wir also mit Deaktivieren.

$(testdayo) deactivate
                                                                      
$ 

Versuchen Sie erneut, auf testdayo umzuschalten.

$ workon testdayo  
                                                                        
$(testdayo)

Wenn Sie sich in einer eindeutigen Umgebung befinden, wird der Umgebungsname in Klammern angegeben, sodass er leicht zu verstehen ist.

Umgebung löschen

Um die erstellte virtuelle Umgebung zu löschen, beenden Sie global und geben Sie rmvirtualenv [Umgebungsname] ein.

$ rmvirtualenv testdayo
Removing testdayo...
                                                                      
$ 
Haken

Ein weiterer Vorteil der Verwendung von virtualenvwrapper besteht darin, dass es so beschrieben werden kann, dass eine bestimmte Verarbeitung zum Zeitpunkt des Erstellens, Umschaltens und Löschens der Umgebung wie oben beschrieben durchgeführt wird. Es gibt verschiedene Hook-Punkte wie Voraktivieren, Voraktivieren und Nachaktivieren, die einen bestimmten Prozess ausführen. Einzelheiten finden Sie im Dokument ↓

Extending Virtualenvwrapper - virtualenvwrapper

Die diesen Hook-Punkten entsprechenden Dateien

[WORKON_HOME PATH von virtualenvwrapper] / [Umgebungsname] / bin /

Da es unter der Kontrolle steht, ist es gut, das Shell-Skript zu schreiben, das Sie dort ausführen möchten. Wenn Sie beispielsweise test.sh ausführen möchten, wenn Sie zu einer bestimmten Umgebung wechseln, wird der entsprechende Hook-Punkt nachaktiviert.

[WORKON_HOME PATH von virtualenvwrapper] / [Umgebungsname] / bin / postactivate

Zu

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

source test.sh

Sie können es schreiben als. Die erste Zeile sollte mit der Ausführungsumgebung Ihrer Shell übereinstimmen (#! / Bin / bash usw.).

Recommended Posts

Einführung des Virtualenv-Wrappers
Einführung von Scikit-Optimize
Einführung von PyGMT
Einführung von Python
Einführung von trac (Windows + trac 1.0.10)
Einführung von ferenOS 1 (Installation)
Mechanismus von Pyenv und Virtualenv
[Einführung in cx_Oracle] Übersicht über cx_Oracle
Einführung in Aktivitäten mit Python
Einführung von Kaffee mit Pyenv
Einführung und Tipps von mlflow.Tracking
Einführung und Implementierung von JoCoR-Loss (CVPR2020)
Einführung und Implementierung der Aktivierungsfunktion
Einführung einer datengesteuerten Controller-Entwurfsmethode
Keras als Wrapper von Theano & TensorFlow
Einführung von pipenv (auch anforderungs.txt erstellen)
Einführung von ferenOS 3 (Paketaktualisierung und Installation)
Einführung des Python-Zeichenpakets Pygal
Aufzeichnung der Python-Einführung für Neulinge
Eine kleine Nischenfunktion Einführung von Faiss
Einfache Einführung der Spracherkennung mit Python
Verwenden von virtualenv, einer unabhängigen Ausführungsumgebung für Python
[EDA] Einführung von Sweetviz (Vergleich mit + Pandas-Profiling)
Vervollständige alles mit Jupyter ~ Einführung von nbdev ~
Einfache Einführung in die Python3-Serie und OpenCV3
Einführung in Scapy ① (Von der Installation bis zur Ausführung von Scapy)
[Einführung in Data Scientist] Grundlagen von Python ♬
Einführung der SoftLayer-Befehlszeilenschnittstellenumgebung