الدرس الخامس: الحلقات التكرارية (Loops) في بايثون وكيف نجعل البرنامج يعمل تلقائيًا
📘 الدرس الخامس: الحلقات التكرارية (Loops) في بايثون وكيف نجعل البرنامج يعمل تلقائيًا
شرح مبسط للمبتدئين: الفرق بين for و while، استخدام range والقوائم (Lists)، الأخطاء الشائعة، وتمارين تطبيقية.
بعد أن تعلمنا في الدرس الرابع كيف نجعل البرنامج يتخذ قرارًا باستخدام if و elif و else، نحتاج الآن إلى مفهوم يجعل البرنامج يوفر علينا الوقت: الحلقات التكرارية (Loops). في البرمجة ستجد نفسك كثيرًا تريد تكرار نفس الأمر عدة مرات، مثل طباعة أرقام، أو المرور على عناصر قائمة، أو تكرار خطوات التدريب في مشاريع الذكاء الاصطناعي.
🧠 ما هي الحلقة التكرارية (Loop)؟
الحلقة التكرارية هي طريقة لجعل البرنامج يقول: كرر هذا الكود عدة مرات. في بايثون سنركز على نوعين أساسيين: for و while. عادةً نستخدم for عندما نعرف عدد التكرارات أو عندما نمرّ على عناصر، بينما while نستخدمها عندما يعتمد التكرار على شرط (Condition).
🔁 حلقة for في بايثون (for loop)
حلقة for تُستخدم لتكرار الكود على نطاق (Range) أو على عناصر داخل قائمة (List). من أشهر الطرق استخدامها مع الدالة range().
for i in range(5):
print(i)
الدالة range(5) تعطي أرقامًا تبدأ من 0 وتنتهي عند 4 (أي 5 أرقام). لذلك الناتج سيكون: 0 ثم 1 ثم 2 ثم 3 ثم 4. إذا أردت البدء من 1 بدل 0، يمكنك تحديد البداية والنهاية.
for i in range(1, 6):
print(i)
📦 استخدام الحلقات مع القوائم (Lists)
من أكثر الاستخدامات شيوعًا للحلقات هو المرور على عناصر قائمة. مثلًا إذا كانت لديك قائمة أسماء، يمكنك طباعة كل اسم بسهولة.
names = ["Ali", "Sara", "Omar"]
for name in names:
print(name)
🔄 حلقة while في بايثون (while loop)
حلقة while تعني: كرر طالما الشرط صحيح. وهي مفيدة عندما لا نعرف عدد التكرارات مسبقًا، مثل تكرار السؤال للمستخدم حتى يكتب قيمة صحيحة.
x = 0
while x < 5:
print(x)
x += 1
ملاحظة مهمة جدًا: في while يجب تحديث المتغير داخل الحلقة (مثل x += 1)، وإلا ستدخل في حلقة لا نهائية (Infinite Loop).
🧩 مثال واقعي: طلب كلمة مرور حتى تكون صحيحة
هذا مثال بسيط لكنه عملي: البرنامج يطلب كلمة المرور حتى تكون صحيحة، ثم يسمح بالدخول.
password = ""
while password != "1234":
password = input("Enter password: ")
print("Access Granted")
🤖 لماذا الحلقات مهمة في الذكاء الاصطناعي (AI)؟
في الذكاء الاصطناعي نحتاج إلى تكرار عمليات كثيرة: المرور على البيانات (Data)، تكرار التدريب (Training) مرات عديدة، تحديث القيم (Updating Values)، وحساب النتائج والأخطاء (Error). بدون الحلقات لا يمكن تنفيذ هذه الخطوات بكفاءة.
✍️ تمارين تطبيقية (Practice)
هذه تمارين بسيطة لكنها قوية لتثبيت الفكرة. جرّب كتابتها بنفسك، ثم قارن بالحلول.
تمرين 1: اطبع الأرقام من 1 إلى 10 باستخدام for.
تمرين 2: اطبع الأعداد الزوجية من 0 إلى 20.
تمرين 3: اطبع كل اسم داخل قائمة أسماء.
# تمرين 1
for i in range(1, 11):
print(i)
# تمرين 2
for i in range(0, 21, 2):
print(i)
# تمرين 3
names = ["Ali", "Sara", "Omar"]
for name in names:
print(name)
خلاصة الدرس: الحلقة التكرارية (Loop) تسمح بتكرار الأوامر. نستخدم for عادةً مع range أو القوائم، ونستخدم while عندما يعتمد التكرار على شرط. الحلقات ضرورية لأي برنامج متقدم، وبالخصوص في مشاريع الذكاء الاصطناعي.
أسئلة شائعة (FAQ)
متى أستخدم for؟ عندما تعرف عدد التكرارات أو تريد المرور على عناصر قائمة.
متى أستخدم while؟ عندما يكون التكرار مرتبطًا بشرط وقد لا تعرف عدد المرات مسبقًا.
لماذا range يبدأ من 0؟ هذا شائع في البرمجة، ويمكنك تحديد البداية مثل range(1, 6).
تعليقات
إرسال تعليق
نرحب بتعليقاتكم البناءة، ونسعى لردود تفاعلية ومفيدة للجميع.