CommencerCommencer gratuitement

Mise en place d'une file d'attente pour les tâches d'impression

Dans la dernière vidéo, vous avez appris que les files d'attente peuvent avoir de multiples applications, comme la gestion des tâches d'une imprimante.

Dans cet exercice, vous allez mettre en œuvre une classe appelée PrinterTasks(), qui représentera une file d'attente simplifiée pour une imprimante. Pour ce faire, vous disposerez de la classe Queue() qui comprend les méthodes suivantes :

  • enqueue(data): ajoute un élément à la file d'attente
  • dequeue(): retire un élément de la file d'attente
  • has_elements(): vérifie si la file d'attente 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

Structures de données et algorithmes en Python

Afficher le cours

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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.____.____())
Modifier et exécuter le code