Python

Python Virtualenv-opplæring

Python Virtualenv-opplæring
Hodepinen i avhengighetsstyring er vanlig for utviklere. En feilaktig oppdatering krever timer med forskning for å korrigere.  Ofte overlapper flere applikasjoner bibliotekets avhengighetskrav.  Dette kan føre til at to applikasjoner som kjører i samme miljø, krever to versjoner av samme bibliotek.  Denne typen konflikter kan forårsake en rekke problemer både i utvikling og produksjon.Gå inn på Virtualenv.  Virtualenv er et verktøy som skaper avhengighetssiloer.  Det lar deg distribuere applikasjoner til et enkelt miljø med isolerte avhengigheter. Docker benytter en lignende strategi på operativsystemnivå. Virtualenv segregerer bare på Python- og biblioteknivå - det vil si miljøene Python-kjørbare og biblioteker er unike for det virtuelle miljøet.  Så i stedet for å bruke bibliotekene som er installert på OS-miljønivå, kan du skille Python-versjoner og biblioteker i avstengte virtuelle miljøer.  Dette lar deg distribuere flere applikasjoner i samme OS-miljø med forskjellige versjoner av samme avhengighet.

Installer Virtualenv

Installasjonen av Virtualenv er rett frem. Ved hjelp av pip kan du utføre kommandoen nedenfor fra terminalen.

$ pip installer virtualenv

Alternativt, hvis du bruker Anaconda, må du bruke terminalkommandoen nedenfor i stedet.

$ conda installer virtualenv

Terminalutgangen din skal se ut som nedenfor.

Bradleys-Mini: ~ BradleyPatton $ pip install virtualenv
Samler virtualenv
Laster ned virtualenv-15.1.0-py2.py3-ingen-noen.whl (1.8MB)
100% | ████████████████████████████████ | 1.8 MB 267 kB / s
Installere innsamlede pakker: virtualenv
Vellykket installert virtualenv-15.1.0
Bradleys-Mini: ~ BradleyPatton $

Lag et miljø

Virtualenv har en hovedkommando. Linjen nedenfor utført fra terminalen vil opprette et nytt “silo” eller virtuelt Python-miljø i veiledningskatalogen.

$ virtualenv opplæring

Du bør få litt terminalutgang som nedenfor etter kjøring.

Bradleys-Mini: nettstedspakker BradleyPatton $ virtualenv Tutorial
Overskriving / brukere / BradleyPatton / anaconda / lib / python2.7 / side-
pakker / Veiledning / lib / python2.7 / orig-prefiks.tekst med nytt innhold
Ny python-kjørbar i / Users / BradleyPatton / anaconda / lib / python2.7 / side-
pakker / Tutorial / bin / python
kopiering / Brukere / BradleyPatton / anaconda / bin / python =>
/ Brukere / BradleyPatton / anaconda / lib / python2.7 / nettstedspakker / Veiledning / bin / python
kopiering / Brukere / BradleyPatton / anaconda / bin / ... / lib / libpython2.7.dylib =>
/ Brukere / BradleyPatton / anaconda / lib / python2.7 / nettstedspakker / Veiledning / lib /
libpython2.7.dylib
Installerer installasjonsverktøy, pip, hjul ... ferdig.

Virtualenv-kommandoen vil bygge en katalogstruktur som inkluderer et binært bibliotek, og inkluderer katalog for det nye virtuelle miljøet som ble opprettet.

Bradleys-Mini: Opplæring BradleyPatton $ ls
bin lib
inkluderer pip-selvkontroll.json
Bradleys-Mini: Opplæring BradleyPatton $

/ søppel inneholder kjørbare filer, spesielt Python og pip.

Bradleys-Mini: bin BradleyPatton $ ls
aktiver easy_install-2.7 python-config
aktivere.csh pip python2
aktivere.fisk pip2 python2.7
aktivere dette.py pip2.7 hjul
easy_install python
Bradleys-Mini: bin BradleyPatton $

De / lib og /inkludere kataloger inkluderer støttefiler for Python og applikasjonen som skal utvikles.

Aktiver Virtualenv

Aktiveringsskriptet oppdaterer banen din slik at du kan bruke dette virtuelle miljøet uten å måtte navigere til katalogen. Det gjør det litt enklere å bruke, men kan hoppes over hvis du er en terminal ninja og ikke har noe imot tastetrykkene.

I / søppel katalog er det et aktiver BASH-skript. Du kan utføre ved å bruke nedenstående.

$ ./ aktiver

Hvis du vil merke fra fomlingen nedenfor at jeg måtte endre tillatelsen til filen for å utføre. Jeg brukte CHMOD 700 aktiveres kommando for å oppdatere tillatelsene. Du må kanskje også utføre denne oppdateringen før du kjører aktiveringsskriptet.

Bradleys-Mini: bin BradleyPatton $ ls
aktiver easy_install-2.7 python-config
aktivere.csh pip python2
aktivere.fisk pip2 python2.7
aktivere dette.py pip2.7 hjul
easy_install python
Bradleys-Mini: bin BradleyPatton $ ./ aktiver
-bash: ./ aktivere: Tillatelse nektet
Bradleys-Mini: bin BradleyPatton $ sudo ./ aktiver
Passord:
sudo: ./ aktivere: kommandoen ble ikke funnet
Bradleys-Mini: bin BradleyPatton $ chmod 700 aktivere
Bradleys-Mini: bin BradleyPatton $ ./ aktiver
Bradleys-Mini: bin BradleyPatton $

Deaktiver Virtualenv

For å angre endringene i miljøvariabelen som ble gjort ved aktivering, kjør følgende kommando fra terminalen. Dette vil tilbakestille baneforandringene dine som de aldri skjedde. Det er så enkelt.

$ deaktiver

Fjerne et miljø

Å fjerne et virtuelt miljø er så enkelt som rm. Bare skriv inn følgende for å fjerne katalogen og rekursivt innholdet.

$ rm -r TutorialtoRemove

Hva nå

Nå, nå må du installere bibliotekene og applikasjonen i det nye virtuelle miljøet.  Pip gjør det enkelt å kjøpe bibliotekene dine.

Jeg vil ikke gå inn på finessene til pip, hvorav noen finner du her, men jeg vil demonstrere en enkelt pipinstallasjon.

$ pip install pandas (Tutorial) Bradleys-Mini: bin BradleyPatton $ pip install pandas
Samler pandaer
Bruker bufret pandaer-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
Samler nummen> = 1.9.0 (fra pandaer)
Bruker bufret 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
Samler python-dateutil (fra pandaer)
Bruker hurtigbufret python_dateutil-2.6.1-py2.py3-ingen-noen.whl
Samler pytz> = 2011k (fra pandaer)
Bruker hurtigbufret pytz-2017.3-py2.py3-ingen-noen.whl
Samler seks> = 1.5 (fra python-dateutil-> pandas)
Bruker hurtigbufret seks-1.11.0-py2.py3-ingen-noen.whl
Installere innsamlede pakker: numpy, six, python-dateutil, pytz, pandas
Numpy-1 er installert.14.0 pandaer-0.22.0
python-dateutil-2.6.1 pytz-2017.3 seks-1.11.0
(Opplæring) Bradleys-Mini: bin BradleyPatton $

Følgende kommando åpner en Python-tolk kommandolinje.  Jeg vil importere vårt nye pandabibliotek og sjekke versjonen. Versjon 19 er min globale pandaversjon, men som du ser fra terminalutgangen, er versjonen som brukes i vårt virtuelle miljø for opplæring 22.

$ python (opplæring) Bradleys-Mini: bin BradleyPatton $ python
Python 2.7.13 | Continuum Analytics, Inc.| (standard, 20. des. 2016, 23:05:08)
[GCC 4.2.1 Kompatibel Apple LLVM 6.0 (clang-600.0.57)] på darwin
Skriv inn "help", "copyright", "credits" eller "lisens" for mer informasjon.
Anaconda blir brakt til deg av Continuum Analytics.
Sjekk ut: http: // kontinuum.io / takk og https: // anaconda.org
>>> importere pandaer
>>> pandaer.__versjon__
u'0.22.0 '
>>>

Denne opplæringen skal komme i gang med Virtualenv.  Jeg har lagt til lenken til Virtualenv-siden som kan hjelpe til med noen grundige konfigurasjoner ved hjelp av parametere og konfigurasjonsinnstillinger som kan brukes under spesielle omstendigheter.

Referanser

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

OpenTTD vs Simutrans
Å lage din egen transportsimulering kan være morsom, avslappende og ekstremt fristende. Derfor må du sørge for at du prøver så mange spill som mulig f...
OpenTTD Tutorial
OpenTTD er et av de mest populære forretningssimuleringsspillene der ute. I dette spillet må du lage en fantastisk transportvirksomhet. Du begynner im...
SuperTuxKart for Linux
SuperTuxKart er en flott tittel designet for å gi deg Mario Kart-opplevelsen gratis på Linux-systemet ditt. Det er ganske utfordrende og morsomt å spi...