حلقة While
جزء من قسم الأساسيات في رحلة Python على Coddy. الدرس 36 من 77.
تختلف حلقة while عن حلقة for. تتيح لنا حلقة for التكرار على range محدد، بينما تتيح لنا حلقة while مواصلة التكرار ما دام condition معيّنًا مستوفًى.
لاستخدام حلقة while اكتب:
while condition:
codeسيُنفَّذ الكود فقط إذا كان الشرط True.
عادةً ما يتم تشكيل condition باستخدام عوامل المقارنة مثل <= (أصغر من أو يساوي)، >= (أكبر من أو يساوي)، < (أصغر من)، > (أكبر من)، أو == (يساوي). يستمر loop في العمل ما دام تقييم تلك المقارنة هو True، ويتوقف بمجرد أن يصبح False.
داخل جسم loop، تحتاج عادةً إلى update الـvariable التي يتم التحقق منها. ويتم ذلك باستخدام عوامل الإسناد المركب مثل += (الجمع والإسناد)، أو -= (الطرح والإسناد)، أو *= (الضرب والإسناد)، أو /= (القسمة والإسناد). على سبيل المثال، x *= 2 هو اختصار لـ x = x * 2. من دون تحديث الـvariable، لن يتغير الـcondition أبدًا، وسيستمر الـloop إلى الأبد.
هناك العديد من حالات الاستخدام التي يمكن فيها لـ while حل المشكلة، ولكن حلقة for لا يمكنها ذلك.
على سبيل المثال، ضع في اعتبارك هذه المشكلة:
اعثر على أصغر قوة للعدد 2 تكون أكبر من عدد مُعطى.
لحلّها، سنستخدم حلقة while ستضرب القوة الحالية للعدد 2 في 2 بشكل متكرر حتى تصبح أكبر من العدد المُعطى:
number = 27
power_of_two = 1
while power_of_two <= number:
power_of_two *= 2
print(power_of_two)هنا، power_of_two <= number هو الشرط الذي يستخدم عامل مقارنة، وpower_of_two *= 2 يُحدّث المتغير في كل تكرار باستخدام عامل إسناد مركب. بمجرد أن تتجاوز power_of_two قيمة number، يصبح الشرط False وتتوقف الحلقة.
التحدي
مبتدئاكتب برنامجًا يحصل على إدخال واحد، وهو عدد float.
استخدم حلقة while لقسمة الإدخال على 2 ما دام العدد أكبر من أو يساوي 3.5.
اطبع أول عدد يكون أصغر من 3.5.
جرّب بنفسك
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على المدخلات2المتغيرات
الأرقامالنصوص (String)القيم المنطقية (Boolean)قواعد التسميةالمتغيرات الفارغةمراجعة - تهيئة المتغيرات8الحلقات التكرارية
حلقة Forحلقة Whileجملة Breakجملة Continueمراجعة - المضروب (Factorial)دالة Rangeالحلقات المتداخلةمراجعة - Dynamic Input3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراجالإخراج مع المتغيراتالإدخالتحويل الأنواعمراجعة - حتى 120مراجعة - صح أم خطأتدرّب بنفسك: مترجم Python عبر الإنترنت