Reálny projekt v Pythone nemôžete úspešne dokončiť bez virtuálneho prostredia. Nástroje ako virtualenvwrapper a virtualenv sú bežné na vytváranie a správu virtuálnych prostredí pre vývoj webu, zatiaľ čo anaconda je široko používaná dátovými vedcami.
Pozrime sa, ako by ste mali vytvárať a spravovať svoje virtuálne prostredia Python pomocou rôznych dostupných nástrojov na správu.
Ako fungujú virtuálne prostredia
Keď vytvárate virtuálne prostredie, dávate svojmu počítaču pokyn, aby vytvoril dodatočnú dočasnú kópiu Pythonu. Táto kópia je nezávislá od verzie Pythonu vo vašej systémovej premennej. Ak to nepoznáte, pozrite sa na základy virtuálnych prostredí Pythonu .
Vytvorené virtuálne prostredie nielenže funguje; budete ho musieť aktivovať. V skutočnosti čokoľvek, čo robíte mimo virtuálneho prostredia, nebude fungovať bez aktivácie. Toto je spôsob, ako udržať váš globálny priestor oveľa čistejší.
Základným princípom je, že závislosti vo virtuálnom A nebudú fungovať pre virtuálne B --- pokiaľ nenainštalujete závislosť špeciálne pre virtuálne B.
Napriek tomu je bežným úskalím väčšiny nováčikov a dokonca aj niektorých odborníkov nainštalovať svoje závislosti v globálnom priestore pred aktiváciou. To nikdy nebude fungovať; mali by ste vždy aktivovať pred inštaláciou závislosti.
Ako už bolo spomenuté, pre Python existujú rôzne nástroje environmentálneho manažmentu. Poďme sa rýchlo pozrieť na každý z nich, vrátane toho, ako fungujú, a ich možných nedostatkov.
1. Virtualenv
Virtualenv je úžasný nástroj na správu pre tých, ktorí sa v tom vyznajú. Je to celkom jednoduché, aj keď pre začiatočníkov to môže byť frustrujúce.
Ak chcete vytvoriť virtuálne prostredie v systéme Windows, otvorte okno príkazového riadka na vybratom mieste. Napíšte, mkdir [Folder]
aby ste vytvorili nový priečinok, pričom text a zátvorky nahraďte zvoleným názvom.
Ďalej napíšte, cd [Folder]
aby ste sa presunuli do nového adresára, za ktorým nasleduje príkaz virtualenv [Environment Name]
na vytvorenie virtuálneho prostredia.
Ak ešte nepoznáte príkazový riadok, pozrite si niekoľko základných príkazov príkazového riadka, ktoré by ste mali poznať .
Potom zmeňte priečinky na svoje virtuálne prostredie zadaním cd [Environment Name]
. Keď ste vo vnútri [Environment Name] , napíšte cd Scripts
; je nutné použiť veľké písmeno S v skripty . Keď ste v priečinku Skripty, aktivujte virtuálne prostredie zadaním activate
.
Jednou z hlavných nevýhod používania virtualenv je, že musíte byť v jeho adresári Scripts, aby ste ho aktivovali. Preto budete musieť veľa navigovať. Napríklad, ak je váš projekt v inom adresári, budete sa doň musieť vrátiť z priečinka Environment Scripts. Tento proces môže byť únavný, mätúci a neefektívny.
Ak chcete znížiť túto náročnú prácu a ušetriť čas, osvedčeným postupom je vytvoriť virtuálne prostredie v rovnakom adresári, do ktorého plánujete umiestniť svoj projekt. Týmto spôsobom bude mať každý projekt svoje špecifické prostredie v priečinku, ktorý obsahuje.
To vám môže ušetriť veľa problémov, keď sa pokúšate vyvolať virtuálne prostredie, ktoré je špecifické pre projekt, v prípadoch, keď máte rôzne virtuálne prostredia pre rôzne projekty.
Pozrite sa na obrázok nižšie, ako to urobiť. Všimnite si, že myproject a myvirtual sú adresáre projektu a virtuálneho prostredia.
2. Virtualenvwrapper
Ako už názov napovedá, virtualenvwrapper zabalí všetky vaše prostredia do jedného priečinka. Na rozdiel od virtualenv tento priečinok predvolene vytvorí a pomenuje ho Envs .
Všimnite si, že inštalačný príkaz pre virtualenvwrapper v systéme Windows je pip install virtualenvwrapper-win
. Ale pip install virtualenvwrapper
bude fungovať pre macOS.
Ak chcete vytvoriť virtuálne prostredie pomocou tohto nástroja, otvorte CMD; nemusíte prechádzať do priečinka projektu. V príkazovom riadku napíšte mkvirtualenv envname
. Vytvára pre vás vopred aktivované virtuálne prostredie.
Keď budete nabudúce chcieť použiť vytvorené prostredie, osvedčeným postupom je otvoriť príkazový riadok priamo v adresári vášho projektu. Môžete to urobiť otvorením priečinka projektu a zadaním cmd do veľkého navigačného poľa v hornej časti panela.
Keď ste v CMD, použite príkaz workon envname
na aktiváciu virtuálneho prostredia.
Hoci je tento nástroj celkom praktický a ľahko použiteľný, stáva sa problémom, keď zabudnete názov, ktorý ste dali prostrediu pre konkrétny projekt. To je bežné, keď už máte desiatky virtuálnych prostredí v jednom priečinku Envs.
Je to však strata času, ak musíte neustále skúšať každé z prostredí, aby ste zistili, ktoré z nich funguje. Ak chcete vyriešiť tento problém, vždy sa uistite, že ste odstránili nadbytočné virtuálne prostredia v priečinku Envs.
3. Distribúcia Anaconda
Distribúcia Anaconda je náročné riešenie správy prostredia vytvorené pre dátovú vedu. Aj keď v závislosti od preferencií sa stále používa pri vývoji webu. Tento nástroj sa dodáva s navigátorom, ktorý vám umožňuje vytvárať a spravovať vaše prostredia.
Je to viac automatické ako manuálne a funguje ako kombinácia balíkov virtualenv a pip . To znamená, že vždy môžete použiť conda install
na inštaláciu závislostí namiesto pip . Ale z nejakého dôvodu sa zdá, že conda je obmedzená, pokiaľ ide o inštalovateľnosť balíka.
Jedným z riešení tohto obmedzenia je nainštalovať pip do prostredia conda pomocou conda install pip
príkazu. V niektorých prípadoch to nemusí byť potrebné, pretože volanie pipu priamo v prostredí conda bez tvrdej inštalácie pipu stále funguje.
Conda sa však neodporúča pre nováčikov, ktorí používajú Windows, pretože jeho nastavenie vyžaduje určité technické náležitosti. To je nad rámec tejto diskusie, ale pre rýchlu predstavu budete musieť pridať svoju distribúciu Anaconda do cesty vášho systému.
Všimnite si, že Anaconda má tiež vstavaný shell, nazývaný Anaconda shell, ktorý vykonáva pokyny ako CMD. Môžete to vyskúšať vyhľadaním výzvy Anaconda prostredníctvom vyhľadávacieho panela systému Windows.
Ak chcete použiť conda ako nástroj environmentálneho manažmentu, musíte si najprv nainštalovať distribúciu Anaconda . Pred spustením sťahovania sa uistite, že ste vybrali správny operačný systém.
Po nastavení distribúcie Anaconda otvorte príkazový riadok a conda create envname
napísaním vytvorte virtuálne prostredie conda. Pre používateľov systému Windows nie je conda k dispozícii na priame použitie v príkazovom riadku. Budete ho musieť zavolať z dávkového súboru pomocou conda.bat create envname
.
Na aktiváciu už vytvoreného virtuálneho prostredia použite conda activate envname
. Ak ste používateľom systému Windows, zadajte conda.bat activate envname
. Keď otvoríte Anaconda Navigator, zobrazia sa všetky dostupné prostredia.
Upgrade a downgrade verzie vo virtuálnych prostrediach
Ak pracujete na projekte a potrebujete zmeniť verziu závislosti, jednoduchým spôsobom, ako to urobiť, je prejsť na verziu, o ktorú máte záujem.
Napríklad, ak chcete aktualizovať verziu pandy, otvorte CMD a zadajte python -m pip install --upgrade pandas==0.25
. Tento príkaz odinštaluje predchádzajúcu verziu pandy a nainštaluje novú požadovanú verziu.
Je to takmer rovnaké, ak potrebujete prejsť na nižšiu verziu; všetko, čo musíte urobiť, je zmeniť číslo verzie. Týmto spôsobom môžete vždy prepínať verzie závislostí vo virtuálnom prostredí bez migrácie do nového.
Zvládnutie virtuálnych prostredí v Pythone
Tieto nástroje virtuálneho prostredia Python sú praktické a ľahko sa s nimi pracuje. Netrápte sa tým, ktoré z nich ostatní ľudia považujú za „najlepšie“; je to skôr o tvojich preferenciách. Správny nástroj je ten, ktorý najlepšie poslúži vášmu projektu.
Pre viac informácií o Pythone si pozrite, ako programovať a ovládať svoje Arduino pomocou Pythonu .