I den här handledningen lär du dig information om virtuella miljöer. Du lär dig om vikten av att använda virtuella miljöer i Python och hur du kommer igång med att använda virtuella miljöer.
En virtuell miljö är ett verktyg för att upprätthålla separat utrymme för ett projekt med dess beroenden och bibliotek på ett ställe. Denna miljö är specifik för det specifika projektet och stör inte andra beroendens beroenden.
Till exempel kan du arbeta på projekt X som använder version 1.0 av biblioteket Z och också behåller projekt Y som använder version 2.0 av biblioteket Z.
Det virtuella miljöverktyget skapar en mapp i projektkatalogen. Som standard kallas mappen venv
, men du kan även namnge det också. Det håller Python och pip körbara filer inuti den virtuella miljömappen. När den virtuella miljön är aktiverad installeras de paket som installeras efter det i den projektspecifika virtuella miljömappen.
Först, se till att du har pip
installerat på ditt system. Du kan installera pip
använder följande kommando:
sudo apt-get install python-pip python-dev build-essential
Använder sig av pip
, installera det virtuella miljöverktyget.
pip installera virtualenv
Att komma igång med att använda virtualenv
, du måste initiera och aktivera den. Låt oss börja med att skapa en ny Python-projektkatalog PythonApp
.
mkdir PythonApp
Navigera till projektkatalogen PythonApp
och initiera den virtuella miljön genom att skriva följande kommando:
virtualenv PythonAppVenv
Ovanstående kommando kommer att ställa in den virtuella miljön för projektet PythonApp
.
Det skapar en mapp som heter PythonAppVenv
inuti projektkatalogen PythonApp
. Den håller Python och pip körbara i mappen Virtuell miljö. Eventuella nya paket installerade för projektet efter virtuell miljöaktivering placeras i den virtuella miljömappen. Här är mappstrukturen:
För att komma igång med att använda den virtuella miljön måste du aktivera den med följande kommando:
källa PythonAppVenv / bin / aktivera
En gång aktiverad borde du kunna se PythonAppVenv
namn på vänster sida av namnprompten.
Låt oss försöka installera ett nytt paket till projektet PythonApp
.
pip-installationskolv
Det nya paketet ska installeras i den virtuella miljömappen. Kontrollera den virtuella miljömappen inuti lib / python2.7 / site-paket
och du borde kunna hitta den nyligen installerade flaska
paket. Du kan lära dig mer om Flask på projektsidan.
När du är klar med den virtuella miljön kan du avaktivera den med följande kommando:
avaktivera
När du arbetar med Python-program installerar du olika paket som krävs av programmet. Du fortsätter att arbeta, och listan över paket som installeras fortsätter att hälla upp. Nu kommer tiden när du behöver skicka Python-koden till produktionsservern. Oj ... Du vet verkligen inte vilka paket du har installerat för att programmet ska fungera.
Allt du kan göra är att öppna Python-programmet och kontrollera alla paket som du har importerat i ditt program och installera dem en efter en.
En virtuell miljö ger en enklare metod för att hålla reda på de paket som installerats i projektet. När du har aktiverat den virtuella miljön ger den möjlighet att frysa det aktuella tillståndet för miljöpaketet.
Du kan uppnå detta genom att använda följande kommando:
pip frysa> requirements.txt
Ovanstående kommando skapar en fil som heter requirements.txt
som har detaljer om paketen med versioner i den nuvarande miljön. Så här ser det ut:
Nu skulle den här filen vara till stor hjälp för att distribuera projektet på en annan plattform eftersom alla projektberoende redan finns till ditt förfogande i requirements.txt
fil. För att installera projektberoende med hjälp av requirements.txt
fil, kör följande kommando:
pip installera -r requirements.txt
virtualenvwrapper
att göra saker enklareDe virtualenv
Verktyget är verkligen en välsignelse för utvecklare. Men det blir väldigt komplicerat när du måste hantera mer än en virtuell miljö. För att hantera flera virtuella miljöer finns en förlängning till virtualenv
verktyg som heter virtualenvwrapper
.
virtualenvwrapper
är ett omslag runt virtualenv
verktyg som ger funktionaliteten att hantera flera virtuella miljöer.
Låt oss börja med att installera virtualenvwrapper
använder pip.
pip installera virtualenvwrapper
När du har installerat virtualenvwrapper
, du måste ställa in arbetsboken där virtuella miljöer kommer att lagras. Utför följande kommando för att ställa in arbetsmappen för virtualenvwrapper
:
exportera WORKON_HOME = .virtualenvs
Kommandot ovan anger arbetsboken för virtualenvwrapper
till .virtualenvs
mapp i hemkatalogen.
Du kan antingen källan till virtualenvwrapper
kommandon för att springa från terminalen eller lägga till virtualenvwrapper
kommandon till .bashrc
.
källa /usr/local/bin/virtualenvwrapper.sh
Nu kommer kommandona att vara tillgängliga i den nuvarande terminalen genom att trycka på Flik nyckel. Skapa en ny projektmapp som heter PythonProject
. Navigera till projektkatalogen. Tidigare när du använde virtualenv
, du skapade först den virtuella miljön och aktiverade den sedan. Använder sig av virtualenvwrapper
, Du kan slutföra båda dessa uppgifter med ett enda kommando.
mkvirtualenv PythonVenv
Ovanstående kommando skapar den virtuella miljön och aktiverar sedan den.
För att inaktivera den virtuella miljön måste du skriva in avaktivera
kommando.
avaktivera
Antag nu att i vissa scenarier måste du växla mellan de olika virtuella miljöerna du arbetar med. virtualenvwrapper
ger a jobba på
Metod för att byta virtuella miljöer. Kommandot att byta den virtuella miljön är:
Workon PythonV
I ovanstående kommando, PythonV
är namnet på den virtuella miljön. Här är en bild där jobba på
kommandot visas i åtgärd:
virtualenvwrapper
ger också ett kommando för att lista de virtuella miljöerna i din miljö.
ls $ WORKON_HOME
Ovanstående kommando visar en lista över virtuella miljöer som finns i miljön.
För att ta bort en befintlig virtuell miljö kan du använda rmvirtualenv
kommando.
rmvirtualenv PV
Det finns ett kommando som skapar en projektkatalog och dess associerade virtuella miljö. Navigera till terminalen och kör följande kommando:
mkproject NewPro
Ovanstående kommando ska skapa projektet och dess associerade virtuella miljö.
Det finns några fler kommandon som du kan använda i virtualenvwrapper
. Du kan hitta listan med kommandon som är tillgängliga genom att skriva följande kommando:
virtualenvwrapper
I den här handledningen såg du hur du började använda virtuella miljöer i Python. Du lärde dig vikten av att använda virtuell miljö och hur den fungerar. Du tittade också på virtualenvwrapper
, ett omslag i virtualenv
verktyg för hantering av flera virtuella miljöer.
Har du någonsin använt virtuella miljöer i Python? Låt oss veta dina tankar i kommentarerna nedan.