Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

نظرة عامة على المشروع

جزء من قسم Object Oriented Programming في رحلة Python على Coddy — الدرس 55 من 64.

challenge icon

التحدي

متوسط

في هذا التحدي، ستقوم بتنفيذ الأساس لنظام إدارة المكتبة.

قم بتحرير library.py لتنفيذ الفئات المطلوبة باتباع تعليقات TODO. يحتوي ملف المشغل (driver file) على سيناريوهات اختبار شاملة تتحقق من صحة تنفيذك.

  • اتبع تعليقات TODO في library.py للحصول على إرشادات خطوة بخطوة
  • قم بتنفيذ فئة Library مع التهيئة المناسبة والتمثيل النصي (string representation)

ورقة مرجعية

يركز التحدي على تنفيذ نظام إدارة مكتبة بهيكل فئات مناسب وطرق تمثيل السلسلة النصية. لم يتم توفير محتوى درس محدد لإنشاء ملخص شامل.

جرّب بنفسك

# TODO: استيراد فئة Library من ملف library.py
# استخدم التنسيق: from library import Library

# معالج حالات الاختبار الشامل
test_case = input()

if test_case == "basic_library_creation":
    # TODO: إنشاء مكتبة باسم "Test Library"
    # TODO: طباعة كائن المكتبة (سيؤدي ذلك إلى استدعاء طريقة __str__)
    pass
    
elif test_case == "library_attributes":
    # TODO: إنشاء مكتبة باسم "Test Library"
    # TODO: طباعة سمة اسم المكتبة بالتنسيق: Name: Test Library
    # TODO: طباعة طول قائمة الكتب بالتنسيق: Books: 0
    # TODO: طباعة طول قائمة المستخدمين بالتنسيق: Users: 0
    # تلميح: استخدم f-strings، على سبيل المثال print(f"Name: {library.name}")
    pass

elif test_case == "multiple_libraries":
    # TODO: إنشاء مكتبتين مختلفتين بأسماء "Library 1" و "Library 2"
    # TODO: طباعة كلا كائني المكتبة
    pass

elif test_case == "empty_name":
    # TODO: إنشاء مكتبة بسلسلة نصية فارغة كاسم
    # TODO: طباعة كائن المكتبة
    pass

elif test_case == "special_characters":
    # TODO: إنشاء مكتبة بالاسم "!@#$%^&*()"
    # TODO: طباعة كائن المكتبة
    pass

elif test_case == "very_long_name":
    # TODO: إنشاء مكتبة باسم يتكون من 100 حرف 'A' بالضبط (استخدم "A" * 100)
    # TODO: طباعة كائن المكتبة
    pass

elif test_case == "add_books_users":
    # TODO: إنشاء مكتبة باسم "Test Library"
    # TODO: إضافة هذه العناصر إلى قائمة الكتب: ["Book1", "Book2", "Book3"]
    # TODO: إضافة هذه العناصر إلى قائمة المستخدمين: ["User1", "User2"]
    # TODO: طباعة كائن المكتبة (يجب أن يظهر الأعداد المحدثة)
    pass

elif test_case == "empty_lists":
    # TODO: إنشاء مكتبة باسم "Test Library"
    # TODO: طباعة طول قائمة الكتب بالتنسيق: Books length: 0
    # TODO: طباعة طول قائمة المستخدمين بالتنسيق: Users length: 0
    # تلميح: استخدم f-strings، على سبيل المثال print(f"Books length: {len(library.books)}")
    pass

elif test_case == "type_validation":
    # TODO: إنشاء مكتبة بالعدد الصحيح 123 كاسم
    # TODO: طباعة كائن المكتبة (يجب أن يتحول إلى سلسلة نصية)
    pass

جميع دروس Object Oriented Programming