بايثون للحلقات
بايثون للحلقات
تُستخدم حلقة for للتكرار عبر تسلسل (إما قائمة ، أو مجموعة ، أو قاموس ، أو مجموعة ، أو سلسلة).
هذا أقل شبهاً بالكلمة الرئيسية في لغات البرمجة الأخرى ، ويعمل بطريقة أشبه بأسلوب مكرر كما هو موجود في لغات البرمجة الأخرى الموجهة للكائنات.
باستخدام حلقة for ، يمكننا تنفيذ مجموعة من العبارات ، مرة واحدة لكل عنصر في القائمة ، أو tuple ، أو set ، إلخ.
مثال
اطبع كل فاكهة في قائمة الفاكهة:
fruits = ["apple", "banana", "cherry"]
for
x in fruits:
print(x)
لا تتطلب الحلقة for متغير فهرسة لتعيينه مسبقًا.
التكرار من خلال سلسلة
حتى السلاسل كائنات قابلة للتكرار ، فهي تحتوي على سلسلة من الأحرف:
مثال
تكرار الأحرف في كلمة "موزة":
for x in "banana":
print(x)
بيان الاستراحة
باستخدام تعليمة break ، يمكننا إيقاف الحلقة قبل أن تمر عبر جميع العناصر:
مثال
اخرج من الحلقة عندما x
تكون "banana":
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)
if x ==
"banana":
break
مثال
اخرج من الحلقة عندما x
تكون "banana" ، لكن هذه المرة تأتي الفاصل قبل الطباعة:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x ==
"banana":
break
print(x)
بيان الاستمرار
باستخدام تعليمة المتابعة ، يمكننا إيقاف التكرار الحالي للحلقة ، والمتابعة مع التالي:
مثال
لا تطبع الموز:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x ==
"banana":
continue
print(x)
النطاق () الوظيفة
للتكرار خلال مجموعة من التعليمات البرمجية لعدد محدد من المرات ، يمكننا استخدام الدالة range () ،تُرجع الدالة range () تسلسلاً من الأرقام ، بدءًا من 0 افتراضيًا ، وتتزايد بمقدار 1 (افتراضيًا) ، وتنتهي عند رقم محدد.
مثال
باستخدام وظيفة النطاق ():
for x in range(6):
print(x)
لاحظ أن النطاق (6) ليس قيمًا من 0 إلى 6 ، ولكنه قيم من 0 إلى 5.
يتم تعيين القيمة الافتراضية للنطاق () على 0 كقيمة بداية ، ولكن من الممكن تحديد قيمة البداية عن طريق إضافة معلمة: النطاق (2 ، 6) ، مما يعني القيم من 2 إلى 6 (ولكن لا تشمل 6):
مثال
باستخدام معلمة البداية:
for x in range(2, 6):
print(x)
تعمل الدالة range () الافتراضية على زيادة التسلسل بمقدار 1 ، ولكن من الممكن تحديد قيمة الزيادة عن طريق إضافة معامل ثالث: النطاق (2 ، 30 ، 3 ) :
مثال
قم بزيادة التسلسل بـ 3 (الافتراضي هو 1):
for x in range(2, 30, 3):
print(x)
آخر في For Loop
else
تحدد الكلمة الأساسية في
الحلقة for
كتلة من التعليمات البرمجية ليتم تنفيذها عند انتهاء الحلقة:
مثال
اطبع جميع الأرقام من 0 إلى 5 ، واطبع رسالة عند انتهاء الحلقة:
for x in range(6):
print(x)
else:
print("Finally finished!")
ملاحظة:else
لن يتم تنفيذ الكتلة إذا توقفت الحلقة بواسطة تعليمة break
.
مثال
كسر الحلقة عندما x
تكون 3 ، وشاهد ما يحدث مع
else
الكتلة:
for x in range(6):
if x == 3: break
print(x)
else:
print("Finally finished!")
حلقات متداخلة
الحلقة المتداخلة هي حلقة داخل حلقة.
سيتم تنفيذ "الحلقة الداخلية" مرة واحدة لكل تكرار لـ "الحلقة الخارجية":
مثال
اطبع كل صفة لكل فاكهة:
adj = ["red", "big", "tasty"]
fruits = ["apple", "banana", "cherry"]
for x in adj:
for y in fruits:
print(x, y)
بيان التمرير
for
لا يمكن أن تكون الحلقات فارغة ، ولكن إذا كان لديك لسبب ما for
حلقة بدون محتوى ، فضعها في pass
العبارة لتجنب حدوث خطأ.
مثال
for x in [0, 1, 2]:
pass