الاثنين، 9 ديسمبر 2019

الجمل التكرارية حلقة بينما Python while Loop Statements

الجمل التكرارية حلقة بينما 

Python while Loop Statements

بينما تقوم عبارة loop في لغة برمجة Python بتنفيذ عبارة مستهدفة مرارًا وتكرارًا طالما كان هناك شرط معين صحيحًا.

 بناء الجملة
 بناء جملة حلقة في لغة البرمجة بيثون هو -

while expression:
   statement(s)

هنا ، قد تكون عبارة (بيانات) عبارة واحدة أو

 كتلة من البيانات.  الشرط قد يكون أي تعبير ، والحقيقة هي أي قيمة غير صفرية.  تتكرر الحلقة بينما تكون الحالة صحيحة.

 عندما تصبح الحالة خاطئة ، ينتقل التحكم في البرنامج إلى السطر التالي للحلقة مباشرة.

 في Python ، تعتبر جميع العبارات ذات المسافة البادئة بنفس عدد مسافات الأحرف بعد إنشاء البرمجة جزءًا من كتلة واحدة من التعليمات البرمجية.  تستخدم بايثون المسافة البادئة كوسيلة لتجميع البيانات.

Flow Diagram مخطط التدفق

while loop in Python
هنا ، النقطة الأساسية في حلقة بينما هو أن الحلقة قد لا تعمل من أي وقت مضى.  عندما يتم اختبار الحالة وتكون النتيجة خاطئة ، سيتم تخطي جسم الحلقة وسيتم تنفيذ العبارة الأولى بعد تنفيذ حلقة الوقت.

Example مثال


#!/usr/bin/python

count = 0
while (count < 9):
   print 'The count is:', count
   count = count + 1

print "Good bye!"
عند تنفيذ الكود أعلاه ، فإنه ينتج النتيجة التالية -

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!
يتم تنفيذ الكتلة هنا ، التي تتكون من عبارات الطباعة والزيادة ، بشكل متكرر حتى لا يقل العدد عن 9. مع كل تكرار ، يتم عرض القيمة الحالية لعدد الفهرسة ثم زيادتها بمقدار 1.

The Infinite Loop الحلقة التكرارية اللانهائية 

تصبح الحلقة حلقة لا نهائية إذا لم تتحول الحالة إلى FALSE.  يجب توخي الحذر عند استخدام أثناء حلقات بسبب احتمال أن هذا الشرط لا يحل أبدا إلى قيمة FALSE.  ينتج عن هذا حلقة لا تنتهي أبدًا.  وتسمى هذه الحلقة حلقة لا نهائية.

 قد تكون حلقة لا نهائية مفيدة في برمجة العميل / الخادم حيث يحتاج الخادم إلى التشغيل بشكل مستمر حتى تتمكن برامج العميل من التواصل معها عند الاقتضاء.
#!/usr/bin/python

var = 1
while var == 1 :  # This constructs an infinite loop
   num = raw_input("Enter a number  :")
   print "You entered: ", num

print "Good bye!"

عند تنفيذ الكود أعلاه ، فإنه ينتج النتيجة التالية -
Enter a number  :20
You entered:  20
Enter a number  :29
You entered:  29
Enter a number  :3
You entered:  3
Enter a number between :Traceback (most recent call last):
   File "test.py", line 5, in 
      num = raw_input("Enter a number :")
KeyboardInterrupt
المثال أعلاه يذهب في حلقة لا نهائية وتحتاج إلى استخدام CTRL + C لإنهاء البرنامج.

 باستخدام بيان آخر مع الحلقات
 Python يدعم وجود بيان آخر مرتبط ببيان حلقة.

 إذا تم استخدام العبارة الأخرى مع حلقة for ، يتم تنفيذ العبارة الأخرى عندما تستنفد الحلقة تكرار القائمة.

 إذا تم استخدام العبارة الأخرى مع حلقة من الوقت ، يتم تنفيذ العبارة الأخرى عندما تصبح الحالة خاطئة.

 يوضح المثال التالي توليفة عبارة أخرى مع عبارة من الوقت تطبع رقماً طالما كان أقل من 5 ، وإلا يتم تنفيذ عبارة أخرى
.

#!/usr/bin/python

count = 0
while count < 5:
   print count, " is  less than 5"
   count = count + 1
else:
   print count, " is not less than 5"

عند تنفيذ الكود أعلاه ، فإنه ينتج النتيجة التالية -
0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5

Single Statement Suites حزم الجملة الفردية

على غرار صيغة جملة if ، إذا كانت جملة حينها تتكون من عبارة واحدة فقط ، فقد يتم وضعها على نفس السطر مثل رأس الفترة.

 فيما يلي بناء الجملة ومثال سطر واحد أثناء الجملة -
#!/usr/bin/python

flag = 1
while (flag): print 'Given flag is really true!'
print "Good bye!"

من الأفضل عدم تجربة المثال أعلاه لأنه ينتقل إلى حلقة لا نهائية وتحتاج إلى الضغط على مفاتيح CTRL + C للخروج.






التسميات: