👀 Voorbeeld - Een efficiënte wachtrij

Eerder in dit hoofdstuk zagen we dat wachtrijen modelleren met een lijst eigenlijk niet zo efficiënt is.

Een meer efficiënte versie van de wachtrij vinden we terug in de Python-bibliotheek queue. Deze bibliotheek modelleert de wachtrij ook in een aparte klasse, maar in plaats van een lijst te gebruiken worden onderliggend meer gevorderde technieken en structuren gebruikt.

📚 Definitie - Softwarebibliotheek

Een softwarebibliotheek (software library in het Engels) is een stuk herbruikbare, vooraf geschreven code die een bepaalde functionaliteit ondersteunt.

library

👀 Voorbeeld - Een bibliotheek voor wachtrijen

We gebruiken voor de wachtrij uit de queue-bibliotheek twee methodes:

  • get() om een element uit de wachtrij te halen,
  • en put() om een element toe te voegen.

De code ziet er dan zo uit:

from queue import Queue as Wachtrij

# Maak een lege wachtrij
wachtrij = Wachtrij()

# Voeg een aantal elementen toe
wachtrij.put('eat')
wachtrij.put('sleep')
wachtrij.put('code')
wachtrij.put('repeat')

# Verwijder een aantal elementen
print(wachtrij.get())
print(wachtrij.get())
print(wachtrij.get())
print(wachtrij.get())

💡 Hoe importeer je een (deel van) een softwarebibliotheek

Een softwarebibliotheek kan je importeren in je code door import te gebruiken. Bijvoorbeeld,

from queue import Queue as Wachtrij

Dit lees je als volgt: uit de bibliotheek queue importeer je de klasse Queue onder de naam Wachtrij.


👀 Voorbeeld - Softwarebibliotheken voor wiskunde

We zagen al eerder hoe je wiskundige operaties uit de math-bibliotheek van Python kan gebruiken:

from math import sqrt as wortel
print(wortel(4))

💻 Programmeeroefening - Faculteit van een getal

Importeer de functie factorial uit de math-bibliotheek en noem deze faculteit. Bereken daarna de faculteit van acht en print het resultaat.