مشروع نهائي: بناء مدير مهام كامل 🎯
حان وقت تطبيق كل ما تعلمته! في هذا الدرس ستبني مدير مهام (Todo Manager) كامل يستخدم كل مفاهيم بايثون.
المتطلبات
- إضافة مهمة جديدة
- عرض جميع المهام
- إتمام مهمة
- حذف مهمة
- البحث في المهام
- عرض إحصائيات
هذا المشروع يجمع: Classes، Lists، Dictionaries، Functions، Loops، Conditions — كل ما تعلمته!
تمرين
أضف ميزة ترتيب المهام حسب الأولوية (عالي أولاً) وميزة تصدير المهام كنص منسق.
💡 تلميح: أنشئ قاموس أولويات {"عالي": 3, "عادي": 2, "منخفض": 1} واستخدمه مع sorted().
# إضافة على المشروع:
priority_order = {"عالي": 3, "عادي": 2, "منخفض": 1}
def sort_by_priority(tasks):
return sorted(tasks, key=lambda t: priority_order.get(t.priority, 0), reverse=True)
def export_tasks(tasks):
lines = ["=== قائمة المهام ==="]
for t in tasks:
status = "[مكتمل]" if t.done else "[قيد التنفيذ]"
lines.append(f"{t.id}. {t.title} - {t.priority} {status}")
return "\n".join(lines)
# مثال
print(export_tasks(tm.tasks))