3
إرجاع الناتج بـ return
ICT Prep 3 Term 1, Unit 1, Lesson 4: pp. 44–52
الهدفأُرجع قيمة بـ return وأفرق بين return وprint وأعرف أن المتغيرات المحلية تعيش داخل الدالة.
كلمات جديدة
return · ترسل قيمة إلى المكان الذي استدعى الدالةNone · قيمة الدالة التي لا ترجع شيئًاالمتغير المحلي (local variable) · متغير يوجد داخل دالته فقطNameError · تظهر حين يكون الاسم غير معروف
الشرح
تعرض print قيمة على الشاشة. أما return فتسلّم القيمة إلى مكان الاستدعاء ليخزنها البرنامج أو يستخدمها مرة أخرى. ادرس الدالة circle_area. لها معامل radius ومتغير محلي pi والسطر return pi * radius * radius. الاستدعاء circle_area(5) يعطي 78.5 ويخزنه result. والعدد 3.14 تقريب فقط للعدد pi فالإجابات تقريبية أيضًا. أما الدالة التي تطبع فقط فتعيد None، ولذلك يخزن السطر result = add_print(2, 3) القيمة None. والدالة التي فيها return تعطي قيمة حقيقية: وهكذا ينجح result * 2. والاسمان pi وradius يعيشان داخل الدالة فقط. وخارجها يسبب print(pi) خطأ NameError.
Python
1def circle_area(radius): 2 pi = 3.14 3 return pi * radius * radius 4 5result = circle_area(5) 6print(result) 7print(circle_area(10))
Output
78.5 314.0
أمثلة محلولة
Python
1def add_print(a, b): 2 print(a + b) 3 4def add_return(a, b): 5 return a + b 6 7result = add_print(2, 3) 8print(result) 9result = add_return(2, 3) 10print(result * 2)
Output
5 None 10
Python
1def triangle_area(base, height): 2 return 0.5 * base * height 3 4print(triangle_area(6, 4))
Output
12.0
Python
1def circle_area(radius): 2 pi = 3.14 3 return pi * radius * radius 4 5print(pi)
Output
NameError: pi exists only inside the function
نشاط الفصل
اكتب دالة celsius_to_f(c) ترجع c * 9 / 5 + 32. احسب باليد النتيجة مع 25 ومع 100. ثم اكتب السطر الذي يخزن نتيجة 25 في متغير اسمه warm.
تدرّب
1
ماذا تعطي circle_area(10) مع pi = 3.14؟
Python
1def circle_area(radius): 2 pi = 3.14 3 return pi * radius * radius 4 5result = circle_area(5) 6print(result) 7print(circle_area(10))
314.0.
2
ما الفرق بين print وreturn؟
print تعرض قيمة، وreturn تسلّمها لتُخزَّن أو تُستخدم من جديد.
3
ماذا يحمل result بعد result = add_print(2, 3)؟
يحمل None لأن add_print تطبع فقط.
4
لماذا pi = 3.14 تقريب فقط؟
للعدد pi الحقيقي أرقام لا تنتهي، فالعدد 3.14 مقرَّب.