بايثونالحلقة for
- تعريف الحلقة
for
- أمثلة حول الحلقة
for
- الدالة
range()
- طريقة إستخدام الدالة
range()
مع الحلقةfor
تعريف الحلقة for
نستخدم الحلقة for
تنفيذ الكود عدد محدد من المرات، من خلالها يمكن المرور على جميع عناصر السلسلة أو المصفوفة بسهولة بدون الحاجة لتعريف عدّاد و تحديد أين يبدأ و أين ينتهي.
طريقة إستخدامها
فيما يلي الشكل العام لتعريف الحلقة for
في بايثون.
statements
- element - هو متغير عادي نقوم بتعريفه بداخل الحلقة. في كل دورة سيتم جلب قيمة من قيم السلسلة الموضوعة بعده و وضعها فيه.
- sequence - هي السلسلة أو المصفوفة التي نريد الوصول لجميع عناصرها.
- statements - هي جميع الأوامر الموضوعة في الحلقة و هي تتنفذ في كل دورة.
إذاً هنا تقوم الحلقة بالمرور على جميع عناصر المصفوفة بالترتيب من العنصر الأول إلى العنصر الأخير، و في كل دورة تقوم بتخزين قيمة عنصر جديد في المتغير الذي قمنا بتعريفه.
الحلقة for
في بايثون تعمل كما تعمل الحلقة ForEach
في لغات البرمجة الأخرى.
أمثلة حول الحلقة for
في المثال التالي قمنا بعرض جميع قيم عناصر المصفوفة باستخدام الحلقة for
.
المثال الأول
# تحتوي على 7 عناصر days هنا قمنا بتعريف مصفوفة إسمها days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] # هنا في كل دورة من دورات الحلقة سيتم تخزين قيمة عنصر جديد من # و من ثم سيتم عرض قيمته day في المتغير days عناصر المصفوفة for day in days: print(day)
النتيجة
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
في المثال التالي قمنا بالمرور على جميع أحرف النص و عرضهم حرفاً حرفاً باستخدام الحلقة for
.
معلومة: النص بطبيعته يمثل سلسلة من الأحرف لذلك بايثون تتيح لك فعل هذا الأمر بسهولة.
المثال الثاني
# هنا قمنا بتعريف متغير يحتوي على نص، أي يحتوي على سلسلة من الأحرف sentence = 'Python is amazing' # و ثم سيتم عرضه letter في كل دورة من دورات الحلقة سيتم جلب حرف من النص و تخزينه في المتغير for letter in sentence: print(letter)
النتيجة
y
t
h
o
n
i
s
a
m
a
z
i
n
g
الدالة range()
الدالة range()
تستخدم للحصول على سلسلة من الأعداد.
عند إستدعاء هذه الدالة يجب تمرير قيمة، قيمتين أو ثلاث قيم لها.
في حال مررت لها قيمة واحدة مثل range(5)
فإنها سترجع سلسلة من الأرقام تبدأ من 0 إلى 4.
إذاً سترجع 0 ثم 1 ثم 2 ثم 3 ثم 4.
في حال مررت لها قيمتين مثل range(1, 5)
فإنها سترجع سلسلة من الأرقام تبدأ من 1 إلى 4.
إذاً سترجع 1 ثم 2 ثم 3 ثم 4.
في حال مررت لها ثلاث قيم مثل range(1, 5, 2)
فإنها سترجع سلسلة من الأرقام تبدأ من 1 إلى 4 و تزيد إثنين كل مرة.
إذاً سترجع 1 ثم 3.
طريقة إستخدام الدالة range()
مع الحلقة for
في المثال التالي إستخدمنا الدالة range()
للحصول على سلسلة أعداد من 1 إلى 5، و استخدمنا الحلقة for
لطباعتهم.
المثال الأول
# for هنا قمنا بإنشاء سلسلة من الأعداد الموجودة من 1 إلى 5 و مررنا عليها بواسطة الحلقة # و من ثم طباعته n في كل دورة في الحلقة سيتم جلب عدد من هذه السلسلة و تخزينه في المتغير for n in range(1, 6, 1): print(n)
النتيجة
2
3
4
5
في المثال السابق كان باستطاعتنا كتابة range(1, 6)
بدلاً من range(1, 6, 1)
و الحصول على النتيجة ذاتها.
في المثال التالي إستخدمنا الدالة range()
للحصول على سلسلة أعداد من 5 إلى 1، و استخدمنا الحلقة for
لطباعتهم.
المثال الثاني
# for هنا قمنا بإنشاء سلسلة من الأعداد الموجودة من 5 إلى 1 و مررنا عليها بواسطة الحلقة # و من ثم طباعته n في كل دورة في الحلقة سيتم جلب عدد من هذه السلسلة و تخزينه في المتغير for n in range(5, 0, -1): print(n)
النتيجة
4
3
2
1
طريقة العد في الدالة range()
جعلناها -1
لجعل سلسلة الأعداد التي ترجعها لنا تقل واحداً في كل مرة.
لهذا السبب وجدنا أن الدالة range()
أرجعت سلسلة الأعداد التالية: 5, 4, 3, 2, 1.