نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر

نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
PY

منهج Python

دليل مرجعي شامل

كل اللغات
مدرسة البرمجة/منهج Python/بناء واستدعاء الدوال (Defining & Calling Functions)

بناء واستدعاء الدوال (Defining & Calling Functions)

دوال pythonfunctions pythondef pythonتعريف دالة python

الشرح

## الدوال (Functions)

الدالة هي كتلة من الكود قابلة للإعادة الاستخدام يمكن تسميتها واستدعاؤها.

### لماذا الدوال؟ - **إعادة الاستخدام:** اكتب مرة واستخدم مرات - **التنظيم:** تقسيم الكود إلى أجزاء واضحة - **الصيانة:** تعديل مكان واحد يؤثر في كل مكان - **الاختبار:** كل دالة يمكن اختبارها منفردة

### الصيغة: ```python def function_name(parameters): """Docstring اختياري""" # الكود return value # اختياري ```

الصياغة (Syntax)

syntax
1# تعريف دالة
2def greet(name):
3 """تُرحّب بشخص باسمه"""
4 return f"مرحباً يا {name}!"
5
6# استدعاء الدالة
7message = greet("أحمد")
8print(message) # مرحباً يا أحمد!
9
10# دالة بدون return
11def print_line():
12 print("-" * 30)
13
14print_line()

أمثلة عملية

مثال 1: دوال بسيطة

دوال بسيطة
1def add(a, b):
2 return a + b
3
4def is_even(n):
5 return n % 2 == 0
6
7def get_full_name(first, last):
8 return f"{first} {last}"
9
10# استخدام
11print(add(3, 7)) # 10
12print(is_even(8)) # True
13print(get_full_name("أحمد", "محمد")) # أحمد محمد

مثال 2: دالة حاسبة درجات

دالة حاسبة درجات
1def calculate_grade(score):
2 """تحول الدرجة إلى تقدير"""
3 if score >= 90:
4 return "A - ممتاز"
5 elif score >= 80:
6 return "B - جيد جداً"
7 elif score >= 70:
8 return "C - جيد"
9 elif score >= 60:
10 return "D - مقبول"
11 else:
12 return "F - راسب"
13
14# اختبار
15scores = [95, 82, 67, 55]
16for score in scores:
17 print(f"{score}: {calculate_grade(score)}")

نصائح احترافية

  • —**نصائح الدوال:**
  • —كل دالة يجب أن تفعل شيئاً واحداً فقط (مبدأ Single Responsibility)
  • —اكتب Docstring لكل دالة: ماذا تفعل، ما المدخلات، وما المخرجات
  • —اجعل الدوال قصيرة - إذا تجاوزت 20 سطراً فكّر في التقسيم
  • —استخدم Type Hints للوضوح: `def add(a: int, b: int) -> int:`

الدرس السابق

طرق المرور على المجموعات وتصفيتها (Looping through Collections)

الدرس التالي

المعاملات والقيم الافتراضية (Arguments & Default Values)

نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر