Реалізація черги для завдань принтера
У попередньому відео ви дізналися, що черги мають багато застосувань, зокрема для керування завданнями принтера.
У цій вправі ви реалізуєте клас PrinterTasks(), який представлятиме спрощену чергу для принтера. Для цього вам надано клас Queue() з такими методами:
enqueue(data): додає елемент до чергиdequeue(): видаляє елемент із чергиhas_elements(): перевіряє, чи є елементи в черзі. Ось код:
def has_elements(self):
return self.head != None
Ви почнете писати клас PrinterTasks() з методами add_document() і print_documents(). Після цього ви змоделюєте виконання програми, яка використовує клас PrinterTasks().
Ця вправа є частиною курсу
Структури даних і алгоритми в Python
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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.____.____())