في هذا الدرس المثير، سنجعل بايثون يتخذ قرارات! سنتعلم عن جمل `if` الشرطية وكيف تعمل بناءً على شرط صحيح (`True`) أو خاطئ (`False`). سنرى أمثلة مثل: إذا كان العمر مناسبًا، يمكنك مشاهدة الفيلم!
رقم الدرس7
آخر تحديث2025/05/22
تقدم القراءة
بالتأكيد! إليك نسخة من الدرس مع استبدال الرموز التي قد تتعارض مع لغة HTML (`<` و `>`) بنظيراتها الآمنة (`<` و `>`).
بايثون الذكي: كيف تتخذ القرارات؟
أهلاً بكم أيها المفكرون الصغار! في الدروس الماضية، تعلمنا كيف نجعل بايثون يحسب ويتذكر. اليوم، سنتعلم شيئًا مدهشًا: كيف نجعل بايثون يتخذ قرارات بنفسه! تخيل أن بايثون يمكنه أن يقول: “إذا كان هذا صحيحًا، سأفعل كذا”. هذا هو سحر جمل if الشرطية! هيا بنا نعلم بايثون كيف يكون ذكيًا ويختار! 💡
أهداف مغامرتنا الذكية
فهم وظيفة جملة if وكيف تجعل البرامج تتخذ قرارات.
التعرف على عوامل المقارنة (مثل ==, >, <).
إتقان بنية جملة if الصحيحة (النقطتان الرأسيتان : والإزاحة).
كتابة برنامج يغير سلوكه بناءً على قيمة المتغيرات.
1
ما هي جملة if؟ بايثون يختار طريقه! 🛣️
في حياتنا، نتخذ قرارات بناءً على شروط: إذا كانت السماء تمطر ☔، سآخذ مظلتي. إذا أنهيت واجباتي 📚، يمكنني اللعب.
جملة if في بايثون تعمل بنفس الطريقة. إنها تسمح للبرنامج بالتحقق من شرط معين. إذا كان الشرط صحيحًا (True)، فإن بايثون سينفذ الأوامر التي تتبعه. أما إذا كان الشرط خاطئًا (False)، فسيتجاهل هذه الأوامر تمامًا.
الشرط (Condition)
هو سؤال نطرحه على بايثون، وإجابته تكون دائمًا إما True (صحيح) أو False (خاطئ).
2
أدوات المقارنة: كيف يقرر بايثون؟ ⚖️
للمقارنة بين الأشياء في الشروط، نستخدم “عوامل المقارنة”:
== (يساوي يساوي): هل شيئان متساويان؟ (مثال: age == 10)
!= (لا يساوي): هل شيئان مختلفان؟ (مثال: color != “أحمر”)
> (أكبر من): هل الأول أكبر من الثاني؟ (مثال: score > 50)
< (أصغر من): هل الأول أصغر من الثاني؟ (مثال: price < 20)
>= (أكبر من أو يساوي)
<= (أصغر من أو يساوي)
انتبه جيدًا!
نستخدم علامتي يساوي == للمقارنة، بينما نستخدم علامة يساوي واحدة = لوضع قيمة في متغير. هذا فرق مهم جدًا!
3
سر المسافة البادئة (Indentation): لغة بايثون السرية!
الآن بعد أن عرفنا الشرط والنقطتين الرأسيتين (:)، حان وقت اكتشاف أهم سر في جملة if: المسافة البادئة.
تخيل أنك تكتب قائمة مهام:
نظف غرفتك
رتب سريرك
ضع الألعاب في الصندوق
حل واجباتك
المهام الفرعية “رتب سريرك” و”ضع الألعاب” تابعة للمهمة الرئيسية “نظف غرفتك”. المسافة التي تركتها قبلها هي التي تخبرنا بذلك.
في بايثون، هذه المسافة (أو الإزاحة) هي الطريقة التي نخبر بها البرنامج أن مجموعة من الأوامر تابعة لـ if.
القاعدة الذهبية
أي سطر كود تريد تنفيذه فقط إذا كان الشرط صحيحًا، يجب أن يبدأ بمسافة بادئة (عادة 4 مسافات أو ضغطة واحدة على مفتاح Tab).
هيا نرى الفرق:
مثال صحيح ✅
score = 80
if score > 50:
print("أحسنت! أنت ناجح.") # <-- هذه مزاحة للداخل، تابعة لـ if
print("هديتك في انتظارك!") # <-- وهذه أيضاً مزاحة، تابعة لـ if
print("انتهى فحص النتيجة.") # <-- هذه ليست مزاحة، ستنفذ دائمًا
مثال خاطئ ❌
score = 80
if score > 50:
print("أحسنت! أنت ناجح.") # خطأ! لا توجد مسافة بادئة
خطر: خطأ الإزاحة (IndentationError)!
إذا نسيت المسافة البادئة بعد سطر ينتهي بـ : مثل جملة if، سيتوقف بايثون فورًا ويظهر لك خطأ اسمه IndentationError. تذكر هذا جيدًا!
4
بناء أول قرار: الطقس والنزهة ☀️
هيا نطبق ما تعلمناه ونكتب برنامجًا يقرر ما إذا كنا سنذهب في نزهة بناءً على حالة الطقس.
تمرين: قرار النزهة
سهل5 دقائق
المهمة: سنعطي بايثون حالة الطقس في متغير، ثم نجعله يقرر ما إذا كان سيقترح نزهة.
تذكر الهيكل الصحيح: if، الشرط، :، ثم الأوامر بمسافة بادئة.
التحقق من الطقس
#الخطوة 1: نحدد حالة الطقس في متغير
weather = "مشمس"
print("أنا أفكر في حالة الطقس...")
#الخطوة 2: بايثون يتخذ القرار باستخدام if
if weather == "مشمس":
#هذا السطر مزاح لأنه تابع للشرط
print("رائع! هيا بنا نذهب في نزهة ممتعة في الحديقة!")
#هذا السطر ليس مزاحًا، لذا سينفذ دائمًا
print("أتمنى لك يومًا سعيدًا على أي حال!")
الآن تحديك!
اكتب الكود في المحرر أدناه وشغله. ثم، غير قيمة المتغير weather من “مشمس” إلى “غائم” وشغل البرنامج مرة أخرى. ماذا تلاحظ؟
🐍 محرر Python تفاعلي
- جرب تغيير قيمة weather هنا!
اضغط Ctrl+Enter للتشغيل
💡 اضغط "تشغيل الكود" لرؤية النتائج هنا
✅ الاكتشاف!
عندما كانت قيمة weather هي “مشمس”, تحقق الشرط وطبع بايثون الرسالة التي بداخل if (لأنها مزاحة). وعندما غيرتها إلى “غائم”, لم يتحقق الشرط فتجاهل بايثون السطر المزاح تمامًا! لقد أصبح برنامجك ذكيًا!
5
قرار آخر: هل يمكنك مشاهدة الفيلم؟ 🎬
لنفترض أن فيلمًا ما مخصص لمن هم أكبر من 7 سنوات. سنكتب برنامجًا يتحقق من العمر.
تمرين: التحقق من العمر
متوسط7 دقائق
المهمة: سنضع عمرًا في متغير، ونجعل بايثون يقرر ما إذا كان هذا العمر مناسبًا لمشاهدة الفيلم.
التحقق من العمر
#نحدد العمر في متغير
age = 10
print("مرحباً! لنتحقق من العمر المناسب للفيلم...")
#بايثون يتخذ القرار باستخدام if و >
if age > 7:
#هذا السطر داخل الـ if بسبب المسافة البادئة
print("رائع! عمرك مناسب لمشاهدة هذا الفيلم. استمتع!")
#هذا السطر خارج الـ if وسينفذ دائمًا
print("شكرًا لك على استخدام برنامجنا!")
حان دورك للإبداع!
اكتب الكود في المحرر. شغل البرنامج أولاً والعمر هو 10. ثم، غيّر قيمة المتغير age إلى 6 وشغل البرنامج مرة أخرى. ماذا حدث؟
🐍 محرر Python تفاعلي
- جرب تغيير قيمة age هنا!
اضغط Ctrl+Enter للتشغيل
💡 اضغط "تشغيل الكود" لرؤية النتائج هنا
في الكود السابق، إذا غيرنا الشرط إلى if age >= 8، ووضعنا age = 8، هل سيتم طباعة رسالة 'رائع! عمرك مناسب...'؟
التفسير:
نعم، سيتم طباعة الرسالة، لأن الشرط >= يعني 'أكبر من أو يساوي'. وبما أن 8 تساوي 8، فإن الشرط يكون صحيحًا (True) وسيتم تنفيذ الأمر.
ملخص درسنا الذكي اليوم
لقد علمتم بايثون اليوم كيف يفكر ويتخذ قرارات!
جملة if: تسمح لبايثون بتنفيذ أوامر فقط إذا كان الشرط صحيحًا (True).
عوامل المقارنة: نستخدم (==, !=, >, <) لبناء شروطنا.
البنية الأساسية: لا ننسى أبدًا النقطتين الرأسيتين : بعد الشرط، والمسافة البادئة (الإزاحة) للأوامر التي تتبعه.
التحكم في البرنامج: بتغيير قيم المتغيرات، يمكننا التحكم في القرارات التي يتخذها برنامجنا.
المغامرة القادمة!
أبدعتم أيها المبرمجون الأذكياء! 🌟 لكن ماذا لو أردنا أن يفعل بايثون شيئًا محددًا عندما يكون الشرط خاطئًا؟ في الدرس القادم، سنتعرف على صديقة if الوفية، وهي كلمة else التي تعني “وإلا”، لنجعل قرارات بايثون أكثر اكتمالاً! مع السلامة أيها الأبطال! 👋