Implementare una coda per le attività della stampante
Nell’ultimo video hai visto che le code possono avere molte applicazioni, ad esempio la gestione delle attività di una stampante.
In questo esercizio implementerai una classe chiamata PrinterTasks(), che rappresenta una coda semplificata per una stampante. Per farlo, avrai a disposizione la classe Queue() che include i seguenti metodi:
enqueue(data): aggiunge un elemento alla codadequeue(): rimuove un elemento dalla codahas_elements(): verifica se la coda contiene elementi. Questo è il codice:
def has_elements(self):
return self.head != None
Inizierai a scrivere la classe PrinterTasks() con i suoi metodi add_document() e print_documents(). Dopodiché simulerai l’esecuzione di un programma che usa la classe PrinterTasks().
Questo esercizio fa parte del corso
Strutture dati e algoritmi in Python
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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.____.____())