حلقات for و while في بايثون: دليل شامل للتكرار

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

أساسيات الحلقات في بايثون

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

أنواع الحلقات في بايثون

توفر بايثون للمطورين نوعين رئيسيين من هياكل التكرار. تُستخدم حلقة for عندما يكون نطاق التكرار معروفًا مسبقًا أو عند الحاجة لاجتياز عناصر متسلسلة. بينما تستمر حلقة while في العمل طالما يتحقق شرط معين.

الفهم العميق لمبادئ عمل الحلقات هو عامل رئيسي للبرمجة الفعالة بلغة بايثون. الاستخدام الصحيح لهياكل التكرار يساعد في إنشاء كود أكثر قابلية للقراءة والأداء والتوسع.

حلقة for في بايثون

بناء الجملة والمبادئ الأساسية

الهيكل الأساسي لحلقة for في بايثون هو كالتالي:

for متغير in متسلسلة:
    # جسم الحلقة

تقوم حلقة for في بايثون باجتياز عناصر أي كائن قابل للتكرار. تشمل هذه الكائنات القوائم، النصوص، المجموعات، القواميس، المجموعات، وكائنات النطاق الخاصة.

العمل مع دالة range()

دالة range() هي أداة مدمجة لإنشاء متسلسلات رقمية. وهي مفيدة بشكل خاص عند إنشاء حلقات بعدد محدد من التكرارات.

for i in range(5):
    print(i)

نتيجة التنفيذ:

0
1
2
3
4

الإمكانيات المتقدمة لدالة range()

تدعم دالة range() ثلاث معاملات: قيمة البداية، قيمة النهاية، والخطوة. بناء الجملة الكامل هو:

range(start, stop, step)

مثال على الاستخدام بخطوة سالبة:

for i in range(10, 0, -2):
    print(i)

هذا الكود سيطبع الأرقام: 10, 8, 6, 4, 2.

اجتياز أنواع البيانات المختلفة

العمل مع النصوص

تتيح حلقة for اجتياز الأحرف في النص بسهولة:

for char in "Python":
    print(char)

سيتم طباعة كل حرف من النص في سطر منفصل.

معالجة القوائم

يتم اجتياز عناصر القائمة بطريقة مماثلة:

fruits = ["تفاح", "كمثرى", "عنب"]
for fruit in fruits:
    print(fruit)

التكرار على القواميس

عند العمل مع القواميس، يمكن اجتياز المفاتيح أو القيم أو أزواج المفتاح-القيمة:

data = {"الاسم": "آنا", "العمر": 25, "المدينة": "موسكو"}
for key, value in data.items():
    print(f"{key} = {value}")

طرق القواميس للتكرار:

  • keys() - إرجاع المفاتيح
  • values() - إرجاع القيم
  • items() - إرجاع أزواج المفتاح-القيمة

حلقة while في بايثون

بناء الجملة ومبدأ العمل

حلقة while لها هيكل أبسط مقارنة بـ for:

while شرط:
    # جسم الحلقة

تستمر الحلقة في التنفيذ طالما أن الشرط المحدد يُرجع القيمة True. عندما يصبح الشرط خاطئًا، يتوقف تنفيذ الحلقة.

أمثلة عملية

عداد بسيط

i = 0
while i < 5:
    print(i)
    i += 1

النتيجة: الأرقام من 0 إلى 4.

معالجة إدخال المستخدم

تُستخدم حلقة while غالبًا للتحقق من صحة إدخال المستخدم:

password = ""                

المدونات

توصيات الكتب