Een queue voor printertaken implementeren
In de vorige video leerde je dat queues meerdere toepassingen hebben, zoals het beheren van taken voor een printer.
In deze oefening implementeer je een klasse genaamd PrinterTasks(), die een vereenvoudigde queue voor een printer voorstelt. Hiervoor krijg je de klasse Queue() met de volgende methoden:
enqueue(data): voegt een element toe aan de queuedequeue(): verwijdert een element uit de queuehas_elements(): controleert of de queue elementen bevat. Dit is de code:
def has_elements(self):
return self.head != None
Je begint met het coderen van de klasse PrinterTasks() met de methoden add_document() en print_documents(). Daarna simuleer je de uitvoering van een programma dat de klasse PrinterTasks() gebruikt.
Deze oefening maakt deel uit van de cursus
Datastructuren en algoritmen in Python
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
class PrinterTasks:
def __init__(self):
self.queue = Queue()
def add_document(self, document):
# Add the document to the queue
self.____.____(document)
def print_documents(self):
# Iterate over the queue while it has elements
while self.____.____():
# Remove the document from the queue
print("Printing", self.____.____())