Python

Python Virtualenv-Tutorial

Python Virtualenv-Tutorial
Die Kopfschmerzen des Abhängigkeitsmanagements sind bei Entwicklern üblich. Ein fehlerhaftes Update erfordert stundenlange Recherche, um es zu korrigieren.  Häufig überschneiden sich mehrere Anwendungen aufgrund von Bibliotheksabhängigkeitsanforderungen.  Dies kann dazu führen, dass zwei Anwendungen, die in derselben Umgebung ausgeführt werden, zwei Versionen derselben Bibliothek erfordern.  Diese Art von Konflikten kann eine Reihe von Problemen sowohl in der Entwicklung als auch in der Produktion verursachen.Geben Sie Virtualenv ein.  Virtualenv ist ein Tool, das Abhängigkeitssilos erstellt.  Es ermöglicht Ihnen die Bereitstellung von Anwendungen in einer einzigen Umgebung mit isolierten Abhängigkeiten. Docker verfolgt eine ähnliche Strategie auf Betriebssystemebene. Virtualenv trennt nur auf Python- und Bibliotheksebene – d. h. die ausführbaren Python-Umgebungen und -Bibliotheken sind für diese virtuelle Umgebung einzigartig.  Anstatt also die auf Betriebssystemumgebungsebene installierten Bibliotheken zu verwenden, können Sie Python-Versionen und -Bibliotheken in isolierte virtuelle Umgebungen aufteilen.  Auf diese Weise können Sie mehrere Anwendungen in derselben Betriebssystemumgebung mit unterschiedlichen Versionen derselben Abhängigkeiten bereitstellen.

Virtualenv installieren

Die Installation von Virtualenv ist unkompliziert. Mit pip können Sie den folgenden Befehl vom Terminal aus ausführen.

$ pip install virtualenv

Alternativ, wenn Sie Anaconda verwenden, müssen Sie stattdessen den folgenden Terminalbefehl verwenden.

$ conda installieren virtualenv

Ihre Terminalausgabe sollte ähnlich wie unten aussehen.

Bradleys-Mini:~ BradleyPatton$ pip install virtualenv
Sammeln von virtuellen Umgebungen
Herunterladen von virtualenv-15.1.0-py2.py3-keine-irgendwann.whl (1.8MB)
100 % |████████████████████████████████|████████████████████████████████ 1.8MB 267kB/s
Gesammelte Pakete installieren: virtualenv
Virtualenv-15 . erfolgreich installiert.1.0
Bradleys-Mini:~ BradleyPatton$

Erstellen Sie eine Umgebung

Virtualenv hat einen Hauptbefehl. Die folgende Zeile, die vom Terminal ausgeführt wird, erstellt eine neue „Silo“- oder virtuelle Python-Umgebung im Tutorial-Verzeichnis.

$ virtualenv-Tutorial

Sie sollten nach der Ausführung eine Terminalausgabe wie unten erhalten.

Bradleys-Mini:site-packages BradleyPatton$ virtualenv Tutorial
/Benutzer/BradleyPatton/anaconda/lib/python2 . überschreiben.7/Seite-
Pakete/Tutorial/lib/python2.7/Orig-Präfix.txt mit neuem Inhalt
Neue ausführbare Python-Datei in /Users/BradleyPatton/anaconda/lib/python2.7/Seite-
Pakete/Tutorial/bin/python
Kopieren von /Users/BradleyPatton/anaconda/bin/python =>
/Benutzer/BradleyPatton/anaconda/lib/python2.7/site-packages/Tutorial/bin/python
Kopieren von /Users/BradleyPatton/anaconda/bin/… /lib/libpython2.7.dylib =>
/Benutzer/BradleyPatton/anaconda/lib/python2.7/site-packages/Tutorial/lib/
libpython2.7.dylib
Setuptools, Pip, Rad installieren… fertig.

Der Befehl virtualenv erstellt eine Verzeichnisstruktur mit einer Binärdatei, einer Bibliothek und einem Include-Verzeichnis für die neue virtuelle Umgebung, die erstellt wurde.

Bradleys-Mini:Tutorial BradleyPatton$ ls
bin                            lib
einschließen                        pip-selfcheck.json
Bradleys-Mini:Anleitung BradleyPatton$

/Behälter enthält Ihre ausführbaren Dateien, insbesondere Python und pip.

Bradleys-Mini:bin BradleyPatton$ ls
aktivieren                    easy_install-2.7           python-config
aktivieren Sie.csh                pip                        python2
aktivieren Sie.Fisch               pip2                        python2.7
enable_this.py           pip2.7                       Rad
easy_install                 python
Bradleys-Mini:bin BradleyPatton$

Das /lib und /einschließen Verzeichnisse enthalten unterstützende Dateien für Python und die zu entwickelnde Anwendung.

Virtualenv aktivieren

Das Aktivierungsskript aktualisiert Ihren Pfad, sodass Sie diese virtuelle Umgebung nutzen können, ohne mühsam zum Verzeichnis navigieren zu müssen. Es macht es etwas einfacher zu bedienen, könnte aber übersprungen werden, wenn Sie ein Terminal-Ninja sind und die Tastenanschläge nichts ausmachen.

In dem /Behälter Verzeichnis gibt es ein Aktivierungs-BASH-Skript. Sie können mit dem unten stehenden ausführen.

$ ./aktivieren Sie

Wenn Sie von meinem Herumfummeln unten bemerken, dass ich die Berechtigung der Datei zum Ausführen ändern musste. Ich habe das benutzt CHMOD 700 aktivieren Befehl zum Aktualisieren der Berechtigungen. Möglicherweise müssen Sie dieses Update auch durchführen, bevor Sie das Aktivierungsskript ausführen.

Bradleys-Mini:bin BradleyPatton$ ls
aktivieren              easy_install-2.7     python-config
aktivieren Sie.csh           pip                  python2
aktivieren Sie.Fisch          pip2                 python2.7
enable_this.py       pip2.7                Rad
easy_install           python
Bradleys-Mini:bin BradleyPatton$ ./aktivieren Sie
-Schlag: ./aktivieren: Berechtigung verweigert
Bradleys-Mini:bin BradleyPatton$ sudo ./aktivieren Sie
Passwort:
sudo: ./aktivieren: Befehl nicht gefunden
Bradleys-Mini:bin BradleyPatton$ chmod 700 aktivieren
Bradleys-Mini:bin BradleyPatton$ ./aktivieren Sie
Bradleys-Mini:bin BradleyPatton$

Virtualenv deaktivieren

Um die Änderungen der Umgebungsvariablen, die durch Activate vorgenommen wurden, rückgängig zu machen, führen Sie den folgenden Befehl vom Terminal aus:. Dadurch werden deine Pfadänderungen rückgängig gemacht, als ob sie nie passiert wären. So einfach ist das.

$ deaktivieren

Entfernen einer Umgebung

Das Entfernen einer virtuellen Umgebung ist so einfach wie rm. Geben Sie einfach Folgendes ein, um das Verzeichnis und seinen Inhalt rekursiv zu entfernen.

$ rm -r TutorialtoRemove

Was jetzt

Nun müssen Sie Ihre Bibliotheken und Anwendungen in der neuen virtuellen Umgebung installieren.  Pip macht die Beschaffung Ihrer Bibliotheken einfach.

Ich werde nicht auf die Feinheiten von Pip eingehen, von denen einige hier zu finden sind, aber ich werde eine einzelne Pip-Installation demonstrieren.

$ pip install pandas (Tutorial) Bradleys-Mini:bin BradleyPatton$ pip install pandas
Pandas sammeln
Zwischengespeicherte Pandas verwenden-0.22.0-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9
_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Sammeln numpy>=1.9.0 (von Pandas)
Verwenden von zwischengespeichertem numpy-1.14.0-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9
_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Sammeln von Python-Dateutil (von Pandas)
Verwenden von zwischengespeichertem python_dateutil-2.6.1-py2.py3-keine-irgendwann.whl
Pytz sammeln>=2011k (von Pandas)
Verwenden von zwischengespeichertem pytz-2017.3-py2.py3-keine-irgendwann.whl
Sechs sammeln>=1.5 (von python-dateutil->pandas)
Verwenden von zwischengespeicherten sechs-1.11.0-py2.py3-keine-irgendwann.whl
Gesammelte Pakete installieren: numpy, six, python-dateutil, pytz, pandas
numpy-1 erfolgreich installiert.14.0 Pandas-0.22.0
python-dateutil-2.6.1 pytz-2017.3 sechs-1.11.0
(Tutorial) Bradleys-Mini:bin BradleyPatton$

Der folgende Befehl öffnet eine Python-Interpreter-Befehlszeile.  Ich werde unsere neue Pandas-Bibliothek importieren und die Version überprüfen. Version 19 ist meine globale Pandas-Version, aber wie Sie aus der Terminalausgabe sehen können, ist die Version, die in unserer virtuellen Tutorial-Umgebung verwendet wird, 22.

$ python (Tutorial) Bradleys-Mini:bin BradleyPatton$ python
Python 2.7.13 |Continuum Analytics, Inc.| (Standard, 20. Dezember 2016, 23:05:08)
[GCC 4.2.1 Kompatibler Apple LLVM 6.0 (Klang-600.0.57)] auf darwin
Geben Sie "Hilfe", "Copyright", "Credits" oder "Lizenz" ein, um weitere Informationen zu erhalten.
Anaconda wird Ihnen von Continuum Analytics präsentiert.
Bitte besuchen Sie: http://continuum.io/danke und https://anaconda.org
>>> Pandas importieren
>>> Pandas.__Ausführung__
u'0.22.0'
>>>

Dieses Tutorial sollte Ihnen den Einstieg in Virtualenv . erleichtern.  Ich habe den Link zur Virtualenv-Seite hinzugefügt, der bei einigen detaillierten Konfigurationen mit Parametern und Konfigurationseinstellungen helfen kann, die unter besonderen Umständen verwendet werden können.

Verweise

https://virtualenv.pypa.io/de/stabil

Schlacht um Wesnoth 1.13.6 Entwicklung veröffentlicht
Schlacht um Wesnoth 1.13.6, das letzten Monat veröffentlicht wurde, ist die sechste Entwicklungsversion im 1.13.x-Serie und bietet eine Reihe von Verb...
So installieren Sie League of Legends auf Ubuntu 14.04
Wenn Sie ein Fan von League of Legends sind, dann ist dies eine Gelegenheit für Sie, League of Legends zu testen. Beachten Sie, dass LOL von PlayOnLin...
Installieren Sie das neueste OpenRA-Strategiespiel auf Ubuntu Linux
OpenRA ist eine Libre/Free Real Time Strategy Game Engine, die die frühen Westwood-Spiele wie den Klassiker Command & Conquer: Red Alert Red nachbilde...