Python-omgevingen instellen in Linux en Unix Systems

Briefing : deze gids laat je zien hoe je de Python-omgeving instelt op Linux en andere Unix-achtige systemen.

Als je ooit hebt geprobeerd om een ​​Python-ontwikkelomgeving in Windows op te zetten, weet je hoe uitdagend het kan zijn. Onlangs heeft Python een nieuwe versie uitgebracht van hun installatieprogramma's die dat proces bijna pijnloos hebben gemaakt, maar dat betekent niet dat je de beste ontwikkelomgeving uit de doos krijgt, dus in de geest van een recent bericht over It's Foss over het opzetten van een C ++ -omgeving, hier is hoe hetzelfde te doen voor Python.

Goed nieuws, Python is er al

Als een * nix-gebruiker (omdat dit ook van toepassing is op OsX), hebt u al een versie van Python op uw systeem geïnstalleerd. In feite is het waarschijnlijk een groot deel van hoe uw pakketinstallatieprogramma werkt. Het echte probleem is om erachter te komen welke Python-versie je standaard hebt geïnstalleerd en met welke Python-versie je wilt programmeren. Open dus een terminal en kijk wat je hebt:

python --version

zal terugkeren:

Python3.xx

of

Python 2.xx

afhankelijk van wat je terugkrijgt, zou ik ook voorstellen om de andere release ook te proberen, door dat nummer toe te voegen aan de opdracht python. In mijn geval is de standaardinstallatie van Python 2, dus ik typ:

python3 --version

en krijg het juiste antwoord van Python 3.xx terug.

Dit is belangrijk omdat het bepaalt hoe we onze Python-code uitvoeren van welke tolk we ook gebruiken. Er moet een heel ander artikel worden geschreven over het wijzigen van je standaard Python-installatie, dus ik ga die discussie hier vermijden. Onthoud gewoon welke uw machine standaard gebruikt en welke u wilt targeten.

Als u de ene of de andere mist of als u merkt dat u een oudere versie gebruikt, installeert u gewoon de nieuwste versie:

sudo apt-get install python * of * python#

Omgevingen zijn belangrijk

Een van de geweldige dingen over Python is dat het fantastisch eenvoudig is om aan het werk te gaan; deze eenvoud is ook een van de valkuilen. Het opzetten van een goede werkomgeving zal belangrijk zijn en kan in het begin verwarrend zijn, omdat je misschien denkt dat je klaar bent om ermee te schrijven, eenvoudigweg geïnstalleerd op je computer.

Je moet onthouden dat voor elke versie van Python je dezelfde instelling moet gebruiken in je productieomgeving. Elk van de pakketten die u uit de pakketindex haalt, moet bijvoorbeeld ook op uw productiemachine worden geïnstalleerd. Het is een goed idee om deze in een tekstbestand bij te houden dat door pip kan worden gebruikt om ze later te installeren.

Het eerste dat u moet doen, is het opzetten van een virtuele omgeving.

Python 2

In Python 2 wil je virtualenv installeren met pip:

pip install virtualenv

als je hier een foutmelding krijgt, zeg je dat je eerst pip moet installeren, ga je gang en doe je dat. Pip is de meest betrouwbare manier om pakketten te beheren, en zoals de bovenstaande link zegt, het is de aanbevolen manier om het ook te doen. (hint voor OS X-gebruikers die hier zijn gekomen, probeer sudo easy_install pip, misschien moet je de opdracht gebruiken als pip2 in plaats van pip, controleer gewoon voor de -versie)

Met virtualenv geïnstalleerd, kun je gewoon cd naar je projectdirectory en dan een nieuwe omgeving maken:

virtualenv [name_of_your_project]

dit maakt een prullenbak van python-bestanden in de huidige map met de naam my_project. Dat is het, spring naar "Uw virtuele omgeving gebruiken" om te zien wat u vervolgens moet doen.

Python 3

In Python 3 moet de module voor de virtuele omgeving mogelijk worden geïnstalleerd.

sudo apt-get install python3-venv

Zodra je het hebt, ga je gewoon naar je projectdirectory en voer je deze opdracht uit:

python -m venv [name_of_your_project]

dit maakt een prullenbak van python-bestanden in de huidige map met de naam my_project.

Het gebruik van uw virtuele Python-omgeving

Met uw omgeving geïnstalleerd, is de procedure vrijwel hetzelfde in beide versies van Python. Ik heb de werkdirectory voor de duidelijkheid in de volgende opdrachten opgenomen.

[email protected]/to/my_dir$ source my_project/bin/activate

(my_project) [email protected]/to/my_dir$

Kort gezegd, wat deze opdracht doet, is het gebruik van die lokale, schone installatie van Python in uw virtuele omgeving om uw opdrachten uit te voeren. Om dit te testen, zou u uw python-interpreter uit de omgeving kunnen halen en een module (bijvoorbeeld numpy) proberen te importeren die u weet dat u hebt op uw hoofdinstallatie van python.

Om terug uit de omgeving te komen:

(my_project) [email protected]/to/my_dir$ deactivate

[email protected]/to/my_dir$

Wanneer u zich in uw project als bron bevindt, onthoud dan dat u die bronomgeving gaat veranderen, maar niet uw hoofdomgeving, dus alles wat u met die Python doet, is beperkt tot die omgeving.

Uw Python-omgeving de moeite waard maken

Terwijl u aan het werk bent, wilt u af en toe een lijst met omgevingspakketten exporteren om dezelfde omgevingspakketten op uw productiemachine te kunnen installeren.

(my_project) [email protected]_dir$ pip freeze > requirements.txt

Als u dit doet, wordt een tekstbestand in uw projectdirectory gemaakt dat fungeert als een lijst van alle Python-pakketten die u in die omgeving hebt geïnstalleerd. Op deze manier, wanneer u uw project op uw productiemachine plaatst, hoeft u alleen maar te draaien:

pip install -r requirements.txt

Voer Python-programma's uit in Linux

Nu de configuratie van de ontwikkelingsomgeving correct is opgezet, kunnen we deze testen door een paar eenvoudige python-codes te schrijven. Ik gebruik vim om code te schrijven, dus dat is waar je me dit volgende stukje Python3-code kunt laten starten en het vervolgens kunt uitvoeren. Houd er rekening mee dat Django niet op mijn hoofdcomputer is geïnstalleerd, alleen op de bron.

import django

print("Got here")

Dus eigenlijk moet je gewoon het onderstaande commando gebruiken om een ​​Python-programma in Linux uit te voeren:

python program-name.py

Sorry, ik moest van omgeving veranderen voor deze laatste gif, maar je krijgt de foto. Merk op dat ik in (mijn_project) als bron ben wanneer ik dit de eerste keer uitvoer, en dan krijg ik de foutmelding wanneer ik afwezig ben (mijn_project) als bron.

Er is een bundel IDE's die er zijn, en de meesten van hen behandelen dit soort dingen goed, als je aandacht besteedt aan wat je doet. Onthoud dat de installatie van python in uw project degene is die u wilt gebruiken om uw code uit te voeren.

Grote waarschuwing

Omdat ik de fout heb gemaakt, op een jongere leeftijd om dingen te doen, zal ik hier wat wijsheid overbrengen. Voer geen van de pip-commando's uit als sudo . Je zult je hoofdinstallatie van Python verknoeien en dat zal je Linux-pakketbeheerder in de war maken ... en in feite zal het je dag verpesten. Ik heb hier een hele Mint-installatie voor verloren, dus onthoud dat je dit sudo dingen niet moet doen.

Als je geïnteresseerd bent, zou je ook moeten leren om pip te gebruiken op Ubuntu.

Aanbevolen

LosslessCut is een belachelijk eenvoudige videosnijder voor Linux
2019
Crisis bij Void Linux als hoofdontwikkelaar ontbreekt in actie
2019
Putty installeren op Ubuntu en andere Linux-distributies
2019