Terug naar blog

Modules importeren in Python 3: Een uitgebreide gids

Modules importeren in Python 3: Een uitgebreide gids

Inleiding

De meesten van ons zijn bekend met Python als programmeertaal. Een van de geweldige dingen van Python 3 is de talloze ingebouwde functies die het biedt. Je krijgt toegang tot deze functies wanneer je Python 3 gebruikt om verschillende soorten code te schrijven. Voordat we beginnen, bekijk onze handleiding over het installeren van Python 3 en het opzetten van een lokale programmeeromgeving op Ubuntu 16.04. Laten we nu eens kijken naar enkele van de handige functies van Python:

  • print(): Met deze functie kun je expressies afdrukken.
  • abs(): Met deze functie kun je de absolute waarde van elk getal verkrijgen.
  • int(): Hiermee kun je elk gegeven datatype converteren naar een integer.
  • len(): Dit toont de lengte van elke reeks of verzameling.

Zijn ingebouwde functies voldoende?

Helaas zijn deze ingebouwde functies op zichzelf niet voldoende. Wanneer je in Python 3 programmeert, kan het zijn dat je meer functionaliteit nodig hebt. Je wilt niet beperkt worden door alleen de standaardfuncties van het programma. Dat is waar modules in beeld komen.

Wat zijn modules?

Modules stellen je in staat om complexere programma's te bouwen. Ze vergroten je mogelijkheden en geven je meer ruimte om mee te werken. Modules bestaan doorgaans uit Python .py-bestanden. Elk van deze bestanden bevat stukjes Python-code. Je kunt naar elk Python-bestand verwijzen als een module. Met behulp van deze modules kun je van alles doen. Je kunt bijvoorbeeld zowel functies, klassen als variabelen definiëren. Hiernaar kun je verwijzen in andere Python .py-bestanden of via de command-line-interpreter.

Stel dat je een Python-bestand hebt genaamd hello.py. De modulenaam van dit bestand is hello. Je kunt deze module eenvoudig in andere Python-bestanden importeren. Je kunt hem ook gebruiken in de Python command-line-interpreter. De manier waarop je modules in verschillende bestanden importeert, is door gebruik te maken van de import-instructie. Wanneer je een module importeert, voer je in feite de code binnen de module uit. Je maakt de definities in de module bruikbaar voor het huidige bestand.

In deze uitgebreide gids behandelen we hoe je kunt controleren op modules en deze kunt installeren in Python 3. We zullen het ook hebben over hoe je je modules importeert en ze een alias geeft.

Hoe controleer je op modules?

Zoals we al eerder zeiden, zijn er enkele ingebouwde modules in Python 3. Deze zijn te vinden in de Python Standard Library. Deze bibliotheek bevat verschillende standaardmodules die enkele basissysteemfuncties en -oplossingen uitvoeren. Het is een standaardfunctie die je krijgt wanneer je install Python.

Als je wilt controleren of deze modules klaar zijn voor gebruik, moet je een commando invoeren. Je moet ofwel de lokale Python 3-programmeeromgeving of de servergebaseerde programmeeromgeving openen. Vervolgens moet je de Python-interpreter starten in je command-line. Het zal er ongeveer zo uitzien:

Nu kun je de import-instructie uitvoeren. Dit bevestigt dat de module kan worden aangeroepen wanneer dat nodig is. Stel dat je het commando uitvoert met de math-module:

De math-module is een ingebouwde module in Python. Dit betekent dat de interpreter de taak zonder enige feedback zal voltooien. Je keert terug naar de prompt. Je kunt de module direct gebruiken zonder verdere actie.

Hoe installeer je modules?

Aan de andere kant, stel dat je een module wilt uitvoeren die niet is geïnstalleerd. In ons voorbeeld kijken we naar de 2D-plotbibliotheek matplotlib. Hier is hoe je de import-instructie zou uitvoeren met een dergelijke module:

Als je de module niet hebt geïnstalleerd, krijg je een foutmelding als deze:

Om het te laten werken, moet je eerst de Python-interpreter deactiveren. Dat kun je doen met CTRL + D. Vervolgens moet je matplotlib installeren met pip:

Nu kun je matplotlib succesvol importeren in de interpreter met behulp van het import matplotlib commando. Dit keer zal het geen foutmelding opleveren.

Hoe importeer je modules?

Laten we eens kijken hoe we modules kunnen importeren. Om de functies ervan te gebruiken, moet je de module importeren met behulp van het import statement. Een statement bestaat uit het import trefwoord in combinatie met de modulenaam. De modulenaam staat meestal bovenaan de code in een Python-bestand.

Als je bijvoorbeeld naar een Python-bestand kijkt met de naam my_rand_int.py, importeer je de random module om willekeurige getallen te genereren:

Je moet naar de functie verwijzen in puntnotatie. Dat ziet er ongeveer zo uit: [module].[function]. Dit betekent in feite dat je de module kunt gebruiken als een aparte namespace in het huidige bestand.

Laten we, doorgaand met de module, eens kijken naar enkele functies:

  • random.randint(): Deze functie retourneert een willekeurig geheel getal.
  • random.randrange(): Deze functie retourneert een willekeurig element uit een bepaald bereik. Laten we eens kijken hoe je een for loop kunt maken. We roepen een van de functies aan voor de random module in ons huidige programma, namelijk my_rand_int.py:
Het programma importeert de module en gaat vervolgens een for loop in. Zoals je kunt zien, werkt de loop met 10 elementen. Het programma print een willekeurig geheel getal binnen het inclusieve bereik van 1 tot 25. Dit betekent dat de gehele getallen 1 en 25 de parameters zijn van random.randint().

Wanneer je het programma nu uitvoert met python my_rand_int.py, krijg je 10 willekeurige gehele getallen in de uitvoer, zoals dit:

Omdat we de random-module hebben gebruikt, krijg je elke keer nieuwe gehele getallen. Ze zullen echter niet boven of onder de 25 uitkomen. Soms kun je ook meerdere import statements tegelijkertijd gebruiken, zoals dit:

We zullen onze extra module gebruiken door pi van math aan het programma toe te voegen. We zullen ook het aantal willekeurige gehele getallen verminderen:

Nu zal onze uitvoer er zo uitzien:

We hebben vijf willekeurige gehele getallen en de geschatte waarde van pi.

Hoe gebruik je from….import?

Naast import, is een andere instructie die je moet kennen from … import. Dit is handig als je niet naar je functies wilt verwijzen met de puntnotatie. Op deze manier kun je de functies bij hun naam aanroepen en referenties direct specificeren. In dit voorbeeld importeren we de randint() functie uit de random module:

We specificeren direct de functie die we willen aanroepen. Zelfs in ons programma hoeven we alleen de naam van de functie te vermelden zonder de puntnotatie:

De uitvoer zal hetzelfde zijn als wat je hierboven zag. Het verschil is dat je nu het gebruik van puntnotatie volledig kunt vermijden.

Hoe geef je modules een alias?

Je moet ook bekend zijn met het as trefwoord. Met dit trefwoord kun je de modulenaam en de bijbehorende functies wijzigen. Dit kan nodig zijn als je een bestaande of nieuw geïmporteerde module hebt die dezelfde naam gebruikt. De instructie voor het geven van een alias aan modules ziet er als volgt uit:

In ons voorbeeld zullen we de naam van de math module aanpassen. We zullen deze afkorten en veranderen in m. Het programma zal er als volgt uitzien:

Zoals je kunt zien, in plaats van te verwijzen naar pi als math.pi, noemen we het m.pi.

Bepaalde modules hebben officiële aliassen. Dit komt omdat het heel gebruikelijk is dat mensen aliassen gebruiken in plaats van hun werkelijke namen. Neem bijvoorbeeld de matplotlib.pyplot module. In de officiële documentatie is de bijbehorende alias plt. Je zou de alias als volgt maken:

Conclusie

De mogelijkheid om modules toe te voegen en te importeren breidt de wereld van Python-programmeren enorm uit. Hiermee kun je verder reiken dan alleen de ingebouwde functies. Je kunt tegelijkertijd de standaard Python-modules gebruiken en de modules die je installeert met pip. Zorg ervoor dat je deze functie gebruikt wanneer je iets complexers of geavanceerders maakt. Het maakt je werk gemakkelijker, biedt ruimte voor creativiteit en helpt bij het bouwen van sterke programma's.

Finally, here are some more resources from onze blog die je zullen helpen Python verder te benutten:

Veel computerplezier!

author

Hark Labs

Auteur · CloudSigma

Preslav Dobrev is een creatief ontwerper bij CloudSigma, met de nadruk op een consistente bedrijfsidentiteit door middel van traditionele en innovatieve marketingkanalen. Hij is bedreven in het samenvoegen van artistieke visie met strategische marketing om impactvolle merkverhalen te creëren.

Reacties

Nog geen reacties. Wees de eerste.