ПочатиПочніть безкоштовно

Неформальні інтерфейси

Неформальні інтерфейси задають набір методів, які мають бути визначені в усіх класах, що реалізують цей інтерфейс. Нижче наведено клас Supplier, який слугуватиме неформальним інтерфейсом. Щоб YogurtSupplier виконав контракт, визначений інтерфейсом Supplier, у ньому потрібно оголосити методи take_order() і make_delivery(). У цій вправі ви попрактикуєтеся робити саме це.

class Supplier:
  def take_order(self, product_name, quantity):
    pass

  def make_delivery(self, order_id, location):
    pass

Ця вправа є частиною курсу

Середній рівень об'єктно-орієнтованого програмування в Python

Переглянути курс

Інструкції до вправи

  • У класі YogurtSupplier визначте метод take_order(), щоб додавати замовлення до словника self.orders.
  • Завершіть контракт, визначений інтерфейсом Supplier, оголосивши метод make_delivery(), який має виводити повідомлення та видаляти замовлення з self.orders за order_id.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

class YogurtSupplier:
  def __init__(self):
    self.orders = {}
  
  # Finish defining the take_order() method
  ____:
    self.____[f"{product_name}_{quantity}"] = {
      "product_name": ____, "quantity": ____
    }
  
  # Implement a make_delivery() abstract method
  ____:
    print(f"Delivering order: {order_id} to {location}")
    del ____.____[____]
Редагувати та запускати код