Реализация очереди для задач принтера
В предыдущем видео вы узнали, что очереди могут применяться в самых разных задачах — например, для управления заданиями принтера.
В этом упражнении вы реализуете класс 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.____.____())