Hoe u uw virtuele Python-omgevingen effectief kunt maken en beheren

Hoe u uw virtuele Python-omgevingen effectief kunt maken en beheren

U kunt een real-life project in Python niet met succes voltooien zonder een virtuele omgeving. Tools zoals virtualenvwrapper en virtualenv zijn gebruikelijk voor het maken en beheren van virtuele omgevingen voor webontwikkeling, terwijl anaconda veel wordt gebruikt door datawetenschappers.

Laten we eens kijken hoe u uw virtuele Python-omgevingen moet maken en beheren met de verschillende beschikbare beheertools.

Hoe virtuele omgevingen werken

Wanneer u een virtuele omgeving maakt, geeft u uw machine de opdracht om een ​​extra tijdelijke kopie van Python te maken. Die kopie is onafhankelijk van de Python-versie op uw systeemvariabele. Als je hier niet bekend mee bent, kijk dan eens naar de basisprincipes van virtuele Python-omgevingen .

De gecreëerde virtuele omgeving werkt niet alleen; je moet het activeren. In feite zal alles wat u buiten een virtuele omgeving doet niet werken zonder activering. Dit is een manier om uw wereldwijde ruimte een stuk schoner te houden.

Het basisprincipe is dat de afhankelijkheden in virtuele A niet werken voor virtuele B --- tenzij u de afhankelijkheid specifiek voor virtuele B installeert.

Desondanks is een veelvoorkomende valkuil voor de meeste nieuwelingen en zelfs sommige experts om hun afhankelijkheden in de wereldwijde ruimte te installeren voordat ze worden geactiveerd. Dat zal nooit werken; je moet altijd activeren voordat de afhankelijkheid wordt geïnstalleerd.

De verschillende omgevingstools gebruiken: voor- en nadelen

Zoals eerder vermeld, bestaan ​​er verschillende omgevingsbeheertools voor Python. Laten we ze allemaal even bekijken, inclusief hoe ze werken en hun mogelijke tekortkomingen.

1. Virtuele omgeving

Virtualenv is een geweldige beheertool voor degenen die er de weg weten. Het is vrij eenvoudig, hoewel het voor beginners frustrerend kan zijn.

Om er een virtuele omgeving mee te maken op Windows, opent u een opdrachtpromptvenster op de door u gekozen locatie. Typ mkdir [Folder]om een ​​nieuwe map te maken, waarbij u de tekst en haakjes vervangt door de door u gekozen naam.

Typ vervolgens cd [Folder]om naar de nieuwe map te gaan, gevolgd door de opdracht virtualenv [Environment Name]om een ​​virtuele omgeving te maken.

Als u nog niet bekend bent met de opdrachtregel, bekijk dan enkele essentiële opdrachtpromptopdrachten die u moet kennen .

Wijzig vervolgens mappen in uw virtuele omgeving door te typen cd [Environment Name]. Zodra u zich in [Omgevingsnaam] bevindt , typt u cd Scripts; zorg ervoor dat u een hoofdletter S gebruikt in Scripts . Zodra u zich in de map Scripts bevindt, activeert u de virtuele omgeving door te typen activate.

Een groot nadeel van het gebruik van virtualenv is dat u zich in de Scripts-map moet bevinden om het te activeren. Je zult dus veel moeten navigeren. Als uw project zich bijvoorbeeld in een andere map bevindt, moet u ernaartoe navigeren vanuit de map met omgevingsscripts. Dit proces kan vermoeiend, verwarrend en inefficiënt worden.

Om dit drukke werk te verminderen en tijd te besparen, is het een goede gewoonte om de virtuele omgeving in dezelfde map te plaatsen waar u uw project wilt plaatsen. Op deze manier heeft elk project zijn specifieke omgeving in de bijbehorende map.

Dat kan u veel moeite besparen bij het oproepen van de virtuele omgeving die specifiek is voor een project, in gevallen waarin u verschillende virtuele omgevingen hebt voor verschillende projecten.

Bekijk de afbeelding hieronder om te zien hoe je dit doet. Merk op dat myproject en myvirtual respectievelijk de project- en de virtuele-omgevingmappen zijn.

Hoe u uw virtuele Python-omgevingen effectief kunt maken en beheren

2. Virtualenvwrapper

Zoals de naam al aangeeft, verpakt virtualenvwrapper al uw omgevingen in een enkele map. In tegenstelling tot virtualenv, maakt het die map standaard aan en noemt het Envs .

Merk op dat de installatieopdracht voor virtualenvwrapper op Windows pip install virtualenvwrapper-win. Maar pip install virtualenvwrapperzal werken voor macOS.

Open CMD om een ​​virtuele omgeving te maken met deze tool; u hoeft niet naar de map van uw project te navigeren. Eenmaal op de opdrachtregel typt u mkvirtualenv envname. Het creëert een vooraf geactiveerde virtuele omgeving voor u.

De volgende keer dat u de gecreëerde omgeving wilt gebruiken, is het een goede gewoonte om een ​​opdrachtprompt rechtstreeks in de map van uw project te openen. U kunt dit doen door de map van het project te openen en cmd te typen in het grote navigatievak bovenaan het paneel.

Hoe u uw virtuele Python-omgevingen effectief kunt maken en beheren

Als je eenmaal in de CMD bent, gebruik je de opdracht workon envnameom je virtuele omgeving te activeren.

Hoewel deze tool best handig en gemakkelijk te gebruiken is, wordt het een probleem als je de naam vergeet die je aan een omgeving voor een bepaald project hebt gegeven. Dat komt vaak voor als je al tientallen virtuele omgevingen in die ene Envs-map hebt staan.

Het is echter tijdverspilling als je elke omgeving moet blijven uitproberen om te zien welke werkt. Om dit probleem op te lossen, moet u er altijd voor zorgen dat u overbodige virtuele omgevingen in uw Envs-map verwijdert.

3. Anaconda-distributie

Anaconda-distributie is een zware oplossing voor omgevingsbeheer die is gemaakt voor datawetenschap. Hoewel het, afhankelijk van de voorkeur, nog steeds wordt gebruikt bij webontwikkeling. Deze tool wordt geleverd met een navigator waarmee u uw omgevingen kunt maken en beheren.

Het is meer automatisch dan handmatig en fungeert als een combinatie van de virtualenv- en pip- pakketten. Dit betekent dat je altijd kunt gebruiken conda installom afhankelijkheden te installeren in plaats van pip . Maar om de een of andere reden lijkt conda beperkt te zijn in termen van installatie van pakketten.

Een oplossing voor deze beperking is om pip in uw conda-omgeving te installeren met behulp van de conda install pipopdracht. In sommige gevallen is dat misschien niet nodig, omdat pip rechtstreeks in een conda-omgeving aanroepen zonder pip hard te installeren nog steeds werkt.

Conda wordt echter niet aanbevolen voor nieuwkomers die Windows gebruiken, omdat het instellen ervan enige technische details vereist. Dat valt buiten het bestek van deze discussie, maar voor een snel idee moet je je Anaconda-distributie toevoegen aan het pad van je systeem.

Merk op dat Anaconda ook een ingebouwde shell heeft, genaamd Anaconda shell, die instructies zoals de CMD uitvoert. U kunt het uitproberen door te zoeken naar de Anaconda-prompt via uw Windows-zoekbalk.

Om de conda als tool voor milieubeheer te gebruiken, moet u eerst de Anaconda-distributie installeren . Zorg ervoor dat u het juiste besturingssysteem selecteert voordat u met downloaden begint.

Nadat je je Anaconda-distributie hebt ingesteld, open je je opdrachtprompt en typ conda create envnameje om de virtuele omgeving van een conda te maken. Voor Windows-gebruikers is conda niet beschikbaar voor direct gebruik in de opdrachtregel. U moet het vanuit het batchbestand aanroepen met conda.bat create envname.

Gebruik om een ​​reeds gemaakte virtuele omgeving te activeren conda activate envname. Als u een Windows-gebruiker bent, typt u conda.bat activate envname. Wanneer u de Anaconda Navigator opent, worden alle beschikbare omgevingen weergegeven.

Versie-upgrade en downgrade in virtuele omgevingen

Als u aan een project werkt en de versie van een afhankelijkheid moet wijzigen, is een eenvoudige manier om dat te doen een upgrade naar de betreffende versie.

Als u bijvoorbeeld een panda-versie wilt upgraden, opent u uw CMD en typt u python -m pip install --upgrade pandas==0.25. Met die opdracht wordt de vorige versie van panda's verwijderd en wordt de nieuw aangevraagde versie geïnstalleerd.

Het is vrijwel hetzelfde als je een versie moet downgraden; het enige wat u hoeft te doen is het versienummer te wijzigen. Op die manier kunt u altijd van afhankelijkheidsversie in een virtuele omgeving wisselen zonder naar een nieuwe te migreren.

Virtuele omgevingen beheersen in Python

Deze tools voor virtuele Python-omgevingen zijn handig en gemakkelijk om mee te werken. Maak je geen zorgen over welke andere mensen als "de beste" beschouwen; het gaat meer om jouw voorkeur. Het juiste gereedschap is het gereedschap dat het beste bij uw project past.

Voor meer informatie over Python, bekijk hoe je je Arduino programmeert en bestuurt met Python .


Python gebruiken als opdrachtregelcalculator

Python gebruiken als opdrachtregelcalculator

Hoewel u een grafische rekenmachine op uw computer kunt gebruiken, kan de Python-programmeertaalinterpreter ook dienst doen als bureaurekenmachine. Het is zo'n populaire hardloopgrap in de Python-gemeenschap dat het wordt genoemd in de officiële tutorial. Hier leest u hoe u Python als rekenmachine kunt gebruiken.

De 8 beste Java-blogs voor programmeurs

De 8 beste Java-blogs voor programmeurs

Als programmeur moet je uitdagingen aangaan om te overleven en wonderen te bouwen op het gebied van ontwikkeling of programmeren. Als u dus een geavanceerde programmeertaal wilt leren om uw carrièrevaardigheden te verbeteren, is Java een van de beste vooruitzichten die er zijn.

7 essentiële commandos om aan de slag te gaan met Python voor beginners

7 essentiële commandos om aan de slag te gaan met Python voor beginners

Het leren van een nieuwe programmeertaal zoals Python wordt moeiteloos als je een uitgebreid stappenplan hebt waarin wordt beschreven welke concepten je als beginner moet leren en hoe je verder kunt komen om de volgende mijlpaal te bereiken. Zelfs gevorderde programmeurs zouden hun basis regelmatig moeten opfrissen om een ​​solide basis voor zichzelf op te bouwen.

Responsieve webontwerpprincipes

Responsieve webontwerpprincipes

Tegenwoordig is het gebruikelijk om een ​​website of app te bouwen die de gebruikersinterface aanpast, afhankelijk van de browser of het apparaat. Er zijn twee benaderingen om dit doel te bereiken. De eerste omvat het maken van verschillende versies van uw website of app voor verschillende apparaten. Maar het is inefficiënt en kan leiden tot onvoorspelbare fouten.

Het aantal cijfers in een getal tellen met C++, Python en JavaScript

Het aantal cijfers in een getal tellen met C++, Python en JavaScript

Werken met getallen is een integraal onderdeel van programmeren. Elke programmeertaal biedt ondersteuning om getallen op veel verschillende manieren te manipuleren. In dit artikel leert u hoe u het totale aantal cijfers in een geheel getal kunt vinden met behulp van iteratieve, op logs gebaseerde en op tekenreeksen gebaseerde benaderingen.

SQL versus NoSQL: wat is de beste database voor uw volgende project?

SQL versus NoSQL: wat is de beste database voor uw volgende project?

SQL versus NoSQL: wat is de beste database voor uw volgende project?

Tweets insluiten in uw WordPress-berichten

Tweets insluiten in uw WordPress-berichten

Het insluiten van services van derden in uw WordPress-berichten is een opwindende manier om de interesse van een bezoeker te wekken. Ingesloten inhoud biedt ook visuele aanwijzingen die het scannen gemakkelijker maken. WordPress heeft het toevoegen van dit soort inhoud eenvoudig gemaakt.

Hoe de map Node Modules te verwijderen met npkill

Hoe de map Node Modules te verwijderen met npkill

Node.js is een JavaScript-runtimeomgeving waarmee u JavaScript buiten webbrowsers kunt uitvoeren, waardoor het een populaire keuze is voor het ontwikkelen van allerlei soorten toepassingen. Een deel van zijn populariteit is te danken aan de overvloed aan NPM-pakketten die er zijn om de ontwikkelaarservaring te vergemakkelijken.

Hoe u uw eerste Solidity-code schrijft en compileert

Hoe u uw eerste Solidity-code schrijft en compileert

Solidity is de programmeertaal die wordt gebruikt door slimme contracten op de Ethereum-blockchain. Het is een statisch getypeerde, objectgeoriënteerde programmeertaal.

Top 5 badges die uw GitHub-repository een boost zullen geven

Top 5 badges die uw GitHub-repository een boost zullen geven

GitHub-badges kunnen de leesbaarheid van een repository vergroten door gebruikers een snelle manier te bieden om de repository-statistieken vast te leggen. Badges kunnen worden ingesloten in uw README.md om het belang en de noodzaak van uw project aan andere ontwikkelaars duidelijk te maken. Als gevolg hiervan krijgen lezers een heel snel idee van de repository door de bijgevoegde badges te controleren.

Wat is de Internationale Dag van de Programmeurs? 3 manieren om dit jaar te vieren

Wat is de Internationale Dag van de Programmeurs? 3 manieren om dit jaar te vieren

Internationale feestdagen zijn een leuke manier om erkenning te geven aan sociale zaken, historische dagen en respectieve carrières. International Programmers' Day viert de rol die programmeurs spelen om het dagelijks leven te verbeteren. De beschaafde wereld waarin we leven is een product van het harde werk van programmeurs.

Hoe werkt de methode Python String format()? 10 voorbeelden

Hoe werkt de methode Python String format()? 10 voorbeelden

Of het nu gaat om een ​​databasequery of resultaten van wiskundige bewerkingen, de Python-tekenreeksindelingsmethode biedt een meer dynamische en aantrekkelijke manier om resultaten aan een gebruiker te presenteren.

Visual Studio 2022 vs. 2019: moet u nu upgraden? uitgelegd

Visual Studio 2022 vs. 2019: moet u nu upgraden? uitgelegd

Eerder dit jaar bracht Microsoft de preview-versie van Visual Studio 2022 uit in de wilde programmeerwereld. Dit is goed nieuws! Het is een extreem populaire IDE, maar aan een opknapbeurt of misschien zelfs een revisie toe, gezien het tempo van de veranderingen in het DevOps-ecosysteem waarin het gedijt.

Een eenvoudige introductie tot softwarestatistieken

Een eenvoudige introductie tot softwarestatistieken

Softwarestatistieken zijn metingen die worden gebruikt om verschillende aspecten van uw software te kwantificeren. Deze aspecten kunnen variëren van de kosten, kwaliteit en efficiëntie van het ontwikkelteam.

Flask of CherryPy: welk Python-framework moet je gebruiken?

Flask of CherryPy: welk Python-framework moet je gebruiken?

Als je een Python-ontwikkelaar bent, kun je enorm profiteren van de reeks beschikbare frameworks. Terwijl sommige kaders het meest geschikt zijn voor grote ecosystemen, zijn andere gespecialiseerd in het dienen van specifieke ontwikkelingsdoelen. Lees verder om de basisfuncties, het gebruik en de verschillen tussen twee Python-frameworks te leren: Flask en CherryPy.

N-cijferige perfecte kubussen en vierkanten vinden met Python, C++ en JavaScript

N-cijferige perfecte kubussen en vierkanten vinden met Python, C++ en JavaScript

Veel programmeurs houden ervan om lastige wiskundige problemen op te lossen met behulp van code. Het helpt de geest te scherpen en het probleemoplossend vermogen te verbeteren. In dit artikel leer je hoe je de kleinste en grootste n-cijferige perfecte vierkanten en kubussen kunt vinden met Python, C++ en JavaScript. Elk voorbeeld bevat ook voorbeelduitvoer voor verschillende waarden.

Hoe de Python if-instructie te gebruiken?

Hoe de Python if-instructie te gebruiken?

Het if-statement is de drijvende kracht achter logisch programmeren. Als gevolg hiervan is een beter begrip van Pythons een belangrijke toevoeging aan je Python-programmeervaardigheden.

Coderen is niet voor iedereen: 9 technische banen die je zonder kunt krijgen

Coderen is niet voor iedereen: 9 technische banen die je zonder kunt krijgen

Technologie is zonder twijfel de industrie van de toekomst. Als je een van de miljoenen jonge volwassenen bent die op het punt staan ​​om in de eerste fase van je carrière te duiken, vraag je je misschien af ​​wat je moet doen als je niet van coderen houdt.

Het CSS Box-model uitgelegd met voorbeelden

Het CSS Box-model uitgelegd met voorbeelden

Als u van plan bent een geweldige webpagina-indeling te maken, moet u weten over marges, randen, opvulling en inhoud. Elk element in webdesign, of het nu een afbeelding of tekst is, gebruikt een kader met deze eigenschappen. Je kunt eenvoudig complexe lay-outs bouwen door te spelen met het doosmodel. In dit artikel zullen we het CSS Box-model ontleden en laten zien hoe u deze eigenschappen kunt gebruiken met praktische voorbeelden.

Python gebruiken als opdrachtregelcalculator

Python gebruiken als opdrachtregelcalculator

Hoewel u een grafische rekenmachine op uw computer kunt gebruiken, kan de Python-programmeertaalinterpreter ook dienst doen als bureaurekenmachine. Het is zo'n populaire hardloopgrap in de Python-gemeenschap dat het wordt genoemd in de officiële tutorial. Hier leest u hoe u Python als rekenmachine kunt gebruiken.

De 8 beste Java-blogs voor programmeurs

De 8 beste Java-blogs voor programmeurs

Als programmeur moet je uitdagingen aangaan om te overleven en wonderen te bouwen op het gebied van ontwikkeling of programmeren. Als u dus een geavanceerde programmeertaal wilt leren om uw carrièrevaardigheden te verbeteren, is Java een van de beste vooruitzichten die er zijn.

7 essentiële commandos om aan de slag te gaan met Python voor beginners

7 essentiële commandos om aan de slag te gaan met Python voor beginners

Het leren van een nieuwe programmeertaal zoals Python wordt moeiteloos als je een uitgebreid stappenplan hebt waarin wordt beschreven welke concepten je als beginner moet leren en hoe je verder kunt komen om de volgende mijlpaal te bereiken. Zelfs gevorderde programmeurs zouden hun basis regelmatig moeten opfrissen om een ​​solide basis voor zichzelf op te bouwen.

Responsieve webontwerpprincipes

Responsieve webontwerpprincipes

Tegenwoordig is het gebruikelijk om een ​​website of app te bouwen die de gebruikersinterface aanpast, afhankelijk van de browser of het apparaat. Er zijn twee benaderingen om dit doel te bereiken. De eerste omvat het maken van verschillende versies van uw website of app voor verschillende apparaten. Maar het is inefficiënt en kan leiden tot onvoorspelbare fouten.

Het aantal cijfers in een getal tellen met C++, Python en JavaScript

Het aantal cijfers in een getal tellen met C++, Python en JavaScript

Werken met getallen is een integraal onderdeel van programmeren. Elke programmeertaal biedt ondersteuning om getallen op veel verschillende manieren te manipuleren. In dit artikel leert u hoe u het totale aantal cijfers in een geheel getal kunt vinden met behulp van iteratieve, op logs gebaseerde en op tekenreeksen gebaseerde benaderingen.

De 9 beste Docker-alternatieven voor containerbeheer

De 9 beste Docker-alternatieven voor containerbeheer

Containers zijn zeer nuttig voor softwareontwikkeling, implementatie en beheer in een virtuele omgeving. Docker is handig in het containerisatieproces, maar het is niet het enige platform dat er is. Als u op zoek bent naar alternatieven voor Docker, hoeft u niet verder te zoeken. Deze lijst toont enkele veelzijdige en efficiënte Docker-alternatieven die u in uw volgende project kunt gebruiken.

SQL versus NoSQL: wat is de beste database voor uw volgende project?

SQL versus NoSQL: wat is de beste database voor uw volgende project?

SQL versus NoSQL: wat is de beste database voor uw volgende project?

Tweets insluiten in uw WordPress-berichten

Tweets insluiten in uw WordPress-berichten

Het insluiten van services van derden in uw WordPress-berichten is een opwindende manier om de interesse van een bezoeker te wekken. Ingesloten inhoud biedt ook visuele aanwijzingen die het scannen gemakkelijker maken. WordPress heeft het toevoegen van dit soort inhoud eenvoudig gemaakt.

Hoe de map Node Modules te verwijderen met npkill

Hoe de map Node Modules te verwijderen met npkill

Node.js is een JavaScript-runtimeomgeving waarmee u JavaScript buiten webbrowsers kunt uitvoeren, waardoor het een populaire keuze is voor het ontwikkelen van allerlei soorten toepassingen. Een deel van zijn populariteit is te danken aan de overvloed aan NPM-pakketten die er zijn om de ontwikkelaarservaring te vergemakkelijken.

Hoe u uw eerste Solidity-code schrijft en compileert

Hoe u uw eerste Solidity-code schrijft en compileert

Solidity is de programmeertaal die wordt gebruikt door slimme contracten op de Ethereum-blockchain. Het is een statisch getypeerde, objectgeoriënteerde programmeertaal.