## جملة return
تُستخدم لإرجاع قيمة من الدالة إلى من استدعاها.
### أساسيات return: - كل دالة بدون return ترجع `None` تلقائياً - `return` يوقف تنفيذ الدالة فوراً - يمكن إرجاع أي نوع من البيانات
### إرجاع قيم متعددة: Python تُرجع Tuple تلقائياً ```python def min_max(lst): return min(lst), max(lst) # إرجاع tuple
small, big = min_max([3, 1, 7, 2]) ```
### Early Return (الخروج المبكر): ```python def divide(a, b): if b == 0: return None # خروج مبكر return a / b ```
| 1 | def calculate_stats(numbers): |
| 2 | """تحسب الإحصاءات الأساسية""" |
| 3 | if not numbers: |
| 4 | return None, None, None # قائمة فارغة |
| 5 | |
| 6 | total = sum(numbers) |
| 7 | average = total / len(numbers) |
| 8 | minimum = min(numbers) |
| 9 | |
| 10 | return total, average, minimum |
| 11 | |
| 12 | # استخدام |
| 13 | nums = [85, 90, 78, 92, 88] |
| 14 | total, avg, minimum = calculate_stats(nums) |
| 15 | print(f"المجموع: {total}, المتوسط: {avg:.1f}, الأدنى: {minimum}") |
مثال 1: دالة مع return
| 1 | def is_palindrome(text): |
| 2 | """التحقق من أن النص معكوسه مثله""" |
| 3 | cleaned = text.lower().replace(" ", "") |
| 4 | return cleaned == cleaned[::-1] |
| 5 | |
| 6 | words = ["radar", "python", "level", "hello"] |
| 7 | for word in words: |
| 8 | result = "نعم ✅" if is_palindrome(word) else "لا ❌" |
| 9 | print(f"{word}: palindrome? {result}") |