Implémenter une file d'attente pour les tâches d'impression
Dans la dernière vidéo, vous avez vu que les files d'attente ont de multiples applications, par exemple pour gérer les tâches d'une imprimante.
Dans cet exercice, vous allez implémenter une classe appelée PrinterTasks(), qui représentera une file d'attente simplifiée pour une imprimante. Pour cela, on vous fournit la classe Queue() avec les méthodes suivantes :
enqueue(data): ajoute un élément à la filedequeue(): retire un élément de la filehas_elements(): vérifie si la file contient des éléments. Voici le code :
def has_elements(self):
return self.head != None
Vous allez commencer à coder la classe PrinterTasks() avec ses méthodes add_document() et print_documents(). Ensuite, vous simulerez l'exécution d'un programme qui utilise la classe PrinterTasks().
Cet exercice fait partie du cours
<cours>Structures de données et algorithmes en Python</cours>Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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.____.____())