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.
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.
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
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.
Wenn Sie bereits eine Umgebung erstellt haben, können Sie die Liste mit dem Befehl work on anzeigen.
$ workon
sandbox2
sandbox3
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.
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.
Um die erstellte virtuelle Umgebung zu löschen, beenden Sie global und geben Sie rmvirtualenv [Umgebungsname] ein.
$ rmvirtualenv testdayo
Removing testdayo...
$
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