Python

Python Virtualenv-vejledning

Python Virtualenv-vejledning
Hovedpine ved afhængighedsstyring er fælles for udviklere. En fejlagtig opdatering kræver timers forskning for at rette op.  Ofte overlapper flere applikationer kravene til bibliotekets afhængighed.  Dette kan medføre, at to applikationer, der kører i det samme miljø, kræver to versioner af det samme bibliotek.  Denne type konflikter kan forårsage en række problemer både i udvikling og produktion.Indtast Virtualenv.  Virtualenv er et værktøj, der skaber afhængigheds siloer.  Det giver dig mulighed for at distribuere applikationer til et enkelt miljø med isolerede afhængigheder. Docker anvender en lignende strategi på OS-niveau. Virtualenv adskiller sig kun på Python- og biblioteksniveau - det vil sige de miljøer, Python-eksekverbare og biblioteker er unikke for det virtuelle miljø.  Så i stedet for at bruge de biblioteker, der er installeret på OS-miljøniveau, kan du adskille Python-versioner og biblioteker i lukkede virtuelle miljøer.  Dette giver dig mulighed for at implementere flere applikationer i det samme OS-miljø med forskellige versioner af de samme afhængigheder.

Installer Virtualenv

Installationen af ​​Virtualenv er ligetil. Ved hjælp af pip kan du udføre nedenstående kommando fra terminalen.

$ pip installer virtualenv

Alternativt, hvis du bruger Anaconda, skal du bruge nedenstående terminalkommando i stedet.

$ conda installer virtualenv

Din terminaludgang skal se ud som nedenfor.

Bradleys-Mini: ~ BradleyPatton $ pip installer virtualenv
Indsamling af virtualenv
Downloader virtualenv-15.1.0-py2.py3-ingen-nogen.whl (1.8 MB)
100% | ████████████████████████████████ | 1.8 MB 267 kB / s
Installation af indsamlede pakker: virtualenv
Virtualenv-15 er installeret.1.0
Bradleys-Mini: ~ BradleyPatton $

Opret et miljø

Virtualenv har en hovedkommando. Nedenstående linje, der udføres fra terminalen, opretter et nyt “silo” eller virtuelt Python-miljø i vejledningsmappen.

$ virtualenv Tutorial

Du skal få noget terminaloutput som nedenfor efter udførelse.

Bradleys-Mini: webstedspakker BradleyPatton $ virtualenv Tutorial
Overskrivning / Brugere / BradleyPatton / anaconda / lib / python2.7 / sted-
pakker / Tutorial / lib / python2.7 / orig-præfiks.txt med nyt indhold
Ny python eksekverbar i / Brugere / BradleyPatton / anaconda / lib / python2.7 / sted-
pakker / Tutorial / bin / python
kopiering / Brugere / BradleyPatton / anaconda / bin / python =>
/ Brugere / BradleyPatton / anaconda / lib / python2.7 / site-packages / Tutorial / bin / python
kopiering / Brugere / BradleyPatton / anaconda / bin /… / lib / libpython2.7.dylib =>
/ Brugere / BradleyPatton / anaconda / lib / python2.7 / site-packages / Tutorial / lib /
libpython2.7.dylib
Installation af installationsværktøjer, pip, hjul ... færdig.

Virtualenv-kommandoen opbygger en biblioteksstruktur, der inkluderer et binært bibliotek og inkluderer en mappe til det nye virtuelle miljø, der blev oprettet.

Bradleys-Mini: Vejledning BradleyPatton $ ls
bin lib
inkluderer pip-selvkontrol.json
Bradleys-Mini: Selvstudie BradleyPatton $

/beholder indeholder dine eksekverbare filer, især Python og pip.

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

Det / lib og /omfatte mapper inkluderer understøttende filer til Python og applikationen, der skal udvikles.

Aktivér Virtualenv

Aktiveringsscriptet opdaterer din sti, så du kan bruge dette virtuelle miljø uden besværet med at navigere til biblioteket. Det gør det lidt nemmere at bruge, men kan springes over, hvis du er en terminal ninja og ikke har noget imod tastetryk.

I /beholder katalog er der et aktiver BASH script. Du kan udføre ved hjælp af nedenstående.

$ ./ aktiver

Hvis du bemærker fra mit fumlende nedenfor, at jeg var nødt til at ændre filens tilladelse til at udføre. Jeg brugte CHMOD 700 aktiveres kommando for at opdatere tilladelserne. Du skal muligvis også foretage denne opdatering inden du kører aktiveringsscriptet.

Bradleys-Mini: bin BradleyPatton $ ls
aktiver easy_install-2.7 python-konfiguration
aktivere.csh pip python2
aktivere.fisk pip2 python2.7
aktivér dette.py pip2.7 hjul
easy_install python
Bradleys-Mini: bin BradleyPatton $ ./ aktiver
-bash: ./ aktiver: Tilladelse nægtet
Bradleys-Mini: bin BradleyPatton $ sudo ./ aktiver
Adgangskode:
sudo: ./ aktiver: kommandoen blev ikke fundet
Bradleys-Mini: bin BradleyPatton $ chmod 700 aktiver
Bradleys-Mini: bin BradleyPatton $ ./ aktiver
Bradleys-Mini: bin BradleyPatton $

Deaktiver Virtualenv

For at fortryde ændringer i miljøvariabler, der blev foretaget ved aktivering, skal du køre følgende kommando fra terminalen. Dette vil gendanne dine stiændringer, som de aldrig skete. Det er så simpelt som det.

$ deaktiver

Fjernelse af et miljø

Fjernelse af et virtuelt miljø er så simpelt som rm. Skriv blot følgende for at fjerne biblioteket og rekursivt dets indhold.

$ rm -r TutorialtoRemove

Hvad nu

Nå, nu skal du installere dine biblioteker og applikationer i det nye virtuelle miljø.  Pip gør det nemt at købe dine biblioteker.

Jeg vil ikke gå ind på finesser af pip, hvoraf nogle kan findes her, men jeg vil demonstrere en enkelt pipinstallation.

$ pip install pandas (Tutorial) Bradleys-Mini: bin BradleyPatton $ pip install pandas
Samler pandaer
Brug af cachelagrede 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
Indsamling bedøvet> = 1.9.0 (fra pandaer)
Brug af cachelagret 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
Indsamling af python-dateutil (fra pandaer)
Brug af cachelagret python_dateutil-2.6.1-py2.py3-ingen-nogen.whl
Indsamling af pytz> = 2011k (fra pandaer)
Brug af cachelagret pytz-2017.3-py2.py3-ingen-nogen.whl
Samler seks> = 1.5 (fra python-dateutil-> pandaer)
Brug af cache seks-1.11.0-py2.py3-ingen-nogen.whl
Installation af indsamlede pakker: numpy, six, python-dateutil, pytz, pandas
Numpy-1 er installeret.14.0 pandaer-0.22.0
python-dateutil-2.6.1 pytz-2017.3 seks-1.11.0
(Vejledning) Bradleys-Mini: bin BradleyPatton $

Den følgende kommando åbner en Python-tolk kommandolinje.  Jeg importerer vores nye pandabibliotek og tjekker versionen. Version 19 er min globale pandaversion, men som du ser fra terminaludgangen, er den version, der bruges i vores virtuelle tutorial-miljø, 22.

$ python (Tutorial) Bradleys-Mini: bin BradleyPatton $ python
Python 2.7.13 | Continuum Analytics, Inc.| (standard, 20. december 2016, 23:05:08)
[GCC 4.2.1 Kompatibel Apple LLVM 6.0 (clang-600.0.57)] om darwin
Skriv "hjælp", "copyright", "credits" eller "licens" for at få flere oplysninger.
Anaconda er bragt til dig af Continuum Analytics.
Tjek venligst: http: // kontinuum.io / tak og https: // anaconda.org
>>> importer pandaer
>>> pandaer.__version__
u'0.22.0 '
>>>

Denne tutorial skal komme i gang med Virtualenv.  Jeg har tilføjet linket til Virtualenv-siden, der kan hjælpe med en dybdegående konfiguration ved hjælp af parametre og konfigurationsindstillinger, der kan bruges under særlige omstændigheder.

Referencer

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

Mus Remap dine museknapper forskelligt til anden software med X-Mouse Button Control
Remap dine museknapper forskelligt til anden software med X-Mouse Button Control
Måske har du brug for et værktøj, der kan ændre din muses kontrol med hver applikation, du bruger. Hvis dette er tilfældet, kan du prøve en applikatio...
Mus Microsoft Sculpt Touch Wireless Mouse Review
Microsoft Sculpt Touch Wireless Mouse Review
Jeg har for nylig læst om Microsoft Sculpt Touch trådløs mus og besluttede at købe den. Efter at have brugt det et stykke tid besluttede jeg at dele m...
Mus AppyMouse pegefelt på skærmen og musemarkør til Windows-tablets
AppyMouse pegefelt på skærmen og musemarkør til Windows-tablets
Tabletbrugere savner ofte musemarkøren, især når de er vante til at bruge bærbare computere. Touchscreen-smartphones og tablets har mange fordele, og ...