حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش پایتون پروژه‌محور؛ قسمت سوم: شیءگرایی تا ساخت برنامه

ترکیب اشیا در پایتون؛ ساخت تابلوی کارها

ارث‌بری و ترکیب اشیا در پایتون · 0٪

تابلو «نوعی کار» نیست؛ تابلو تعدادی کار داره. این رابطه رو ترکیب یا composition می‌گیم. به‌جای Board(Task)، لیستی از اشیای Task رو در Board نگه می‌داریم.

متد open_titles رو بنویس تا عنوان کارهای انجام‌نشده رو به ترتیب ورود برگردونه. شیء یا لیست اصلی رو تغییر نده. ورودی تابع بررسی، لیستی از زوج‌های [title, done] هست و خروجی فقط لیست عنوان‌هاست.

فعالیت شما

عنوان کارهای انجام‌نشده رو از داخل شیء Board بخون و بدون تغییر داده‌ها برگردون.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

برای انجام فعالیت وارد شوید

فعالیت‌های این بخش به اشتراک فعال نیاز دارند. تهیهٔ اشتراک

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

کد اولیهٔ فعالیت

class Task:
    def __init__(self, title, done):
        self.title = title
        self.done = done

class Board:
    def __init__(self):
        self.tasks = []

    def add(self, task):
        self.tasks.append(task)

    def open_titles(self):
        pass

def open_titles(rows):
    board = Board()
    for title, done in rows:
        board.add(Task(title, done))
    return board.open_titles()