بايثون: الدوال في بايثون: تعريفها واستدعاؤها
الدوال (Functions) هي كتل من التعليمات البرمجية تنفذ مهمة محددة، ويمكن استدعاؤها عدة مرات في البرنامج. تساعد الدوال في تنظيم الكود وتقليل التكرار وتسهيل الصيانة.
ما هي الدوال؟
الدالة هي مجموعة من التعليمات المنظمة التي تؤدي مهمة معينة. في بايثون، تأتي العديد من الدوال جاهزة (مثل print() و len())، ويمكننا أيضاً تعريف دوالنا الخاصة.
تعريف دالة
لتعريف دالة في بايثون، نستخدم الكلمة المفتاحية def متبوعة باسم الدالة وأقواس ونقطتين:
def اسم_الدالة():
# تعليمات الدالة
print("مرحباً!")
مثال بسيط:
def say_hello():
print("أهلاً بك في برنامج بايثون!")
# استدعاء الدالة
say_hello()
الدوال ذات المعاملات (الوسائط)
يمكن للدالة أن تستقبل قيماً تسمى معاملات (parameters) لاستخدامها داخلها:
def greet(name):
print(f"مرحباً {name}!")
greet("أحمد") # الناتج: مرحباً أحمد!
greet("سارة") # الناتج: مرحباً سارة!
الدوال ذات القيمة المعادة
يمكن للدالة أن تعيد قيمة باستخدام الكلمة return:
def add(a, b):
result = a + b
return result
sum_result = add(5, 3)
print(f"المجموع = {sum_result}") # الناتج: المجموع = 8
الدوال ذات المعاملات الافتراضية
يمكن إعطاء قيم افتراضية للمعاملات:
def power(base, exp=2):
return base ** exp
print(power(5)) # 25 (5²)
print(power(5, 3)) # 125 (5³)
فوائد استخدام الدوال
- إعادة الاستخدام: يمكن استدعاء الدالة عدة مرات في البرنامج
- تقسيم المشكلة: تقسم البرنامج الكبير إلى أجزاء صغيرة يسهل إدارتها
- سهولة القراءة: تجعل الكود أكثر تنظيماً ووضوحاً
- سهولة الصيانة: تعديل الدالة يؤثر على جميع استدعاءاتها
- اختبار أسهل: يمكن اختبار كل دالة بشكل منفصل
مثال تطبيقي: حساب مساحة المستطيل
def rectangle_area(length, width):
"""تحسب مساحة مستطيل"""
return length * width
def rectangle_perimeter(length, width):
"""تحسب محيط مستطيل"""
return 2 * (length + width)
l = float(input("أدخل الطول: "))
w = float(input("أدخل العرض: "))
print(f"المساحة = {rectangle_area(l, w)}")
print(f"المحيط = {rectangle_perimeter(l, w)}")
تمرين
السؤال: اكتب دالة في بايثون تسمى is_even تستقبل عدداً صحيحاً وتعيد True إذا كان العدد زوجياً و False إذا كان فردياً.
التطبيق: اكتب برنامجاً يستخدم دالة لحساب مجموع الأعداد من 1 إلى n حيث n يدخله المستخدم.
للمزيد من الدروس
يمكنك الاطلاع على درس بايثون: المتغيرات والجمل الشرطية وكذلك الحلقات التكرارية: for و while في بايثون.
دروس مشابهة:
- إعلام آلي — الشبكات: بروتوكولات الإنترنت: HTTP و FTP و SMTP — الثالث
- إعلام آلي — قواعد البيانات: مفهوم قواعد البيانات: الجداول والحقول وال
- التربية الإسلامية — الأمر بالمعروف والنهي عن المنكر — السنة الثالثة مت
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.