การสร้าง Queue สำหรับงานพิมพ์
ในวิดีโอที่ผ่านมา คุณได้เรียนรู้ว่า Queue มีการนำไปใช้งานได้หลายรูปแบบ เช่น การจัดการงานพิมพ์สำหรับเครื่องพิมพ์
ในแบบฝึกหัดนี้ จะสร้างคลาสชื่อ PrinterTasks() ซึ่งจำลองการทำงานของ Queue อย่างง่ายสำหรับเครื่องพิมพ์ โดยจะมีคลาส Queue() ให้พร้อมใช้งาน ซึ่งประกอบด้วยเมธอดต่อไปนี้:
enqueue(data): เพิ่มสมาชิกเข้าใน Queuedequeue(): นำสมาชิกออกจาก Queuehas_elements(): ตรวจสอบว่า Queue มีสมาชิกอยู่หรือไม่ โค้ดมีดังนี้:
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.____.____())