Lesson 4
لحلقة مع النطاق
1. لحلقة مع النطاق
في الدروس السابقة تعاملنا مع البرامج والشروط المتتابعة. في كثير من الأحيان يحتاج البرنامج إلى تكرار بعض المنع عدة مرات. هذا هو المكان الذي تأتي فيه الحلقات في متناول اليدين. هناك for
و while
مشغلي حلقة في بيثون، في هذا الدرس نقوم بتغطيتها for
.
for
بالتكرار حلقة على أي تسلسل. على سبيل المثال، أي سلسلة في بيثون هي سلسلة من شخصياتها، حتى نتمكن من تكرار عبر لهم باستخدام for
:
for character in 'hello': print(character)
هناك حالة استخدام أخرى للحلقة for-loop هي تكرار متغير عدد صحيح في زيادة الطلب أو خفضه. يمكن إنشاء مثل هذا التسلسل من عدد صحيح باستخدام range(min_value, max_value)
الوظائف range(min_value, max_value)
:
for i in range(5, 8): print(i, i ** 2) print('end of loop') # 5 25 # 6 36 # 7 49 # نهاية الحلقة
يعمل range(min_value, max_value)
الدالة range(min_value, max_value)
إنشاء تسلسل مع الأرقام min_value
و min_value + 1
و ... و max_value - 1
. لا يتم تضمين الرقم الأخير.
هناك شكل مخفض من المدى () - range(max_value)
، وفي هذه الحالة يتم تعيين min_value ضمنيًا إلى الصفر:
for i in range(3): print(i) # 0 # 1 # 2
بهذه الطريقة يمكننا تكرار بعض الإجراءات عدة مرات:
for i in range(2 ** 2): print('Hello, world!')
نفسه كما هو الحال مع إذا، آخر، المسافة البادئة هو ما يحدد والتي يتم التحكم تعليمات من قبل for
والتي ليست كذلك.
يمكن لـ Range () تحديد تسلسل فارغ ، مثل range(-5)
أو range(7, 3)
. في هذه الحالة ، لن يتم تنفيذ الكتلة الصريحة:
for i in range(-5): print('Hello, world!')
لنحصل على مثال أكثر تعقيدًا ونجمع الأعداد الصحيحة من 1 إلى n بشكل شامل.
result = 0 n = 5 for i in range(1, n + 1): result += i # هذا ^^ هو الاختزال لـ # النتيجة = النتيجة + i print(result)
انتبه إلى أن الحد الأقصى للقيمة في النطاق () هو n + 1
لجعل i
تساوي n في الخطوة الأخيرة.
للتكرار خلال تسلسل تنازلي ، يمكننا استخدام صيغة موسعة من النطاق () مع ثلاث حجج - range(start_value, end_value, step)
. عند الحذف ، تكون الخطوة مساوية ضمنيًا إلى 1. ومع ذلك ، يمكن أن تكون أي قيمة غير صفرية. تتضمن الحلقة دائمًا start_value وتستبعد end_value أثناء التكرار:
for i in range(10, 0, -2): print(i) # 10 # 8 # 6 # 4 # 2
2. ضبط وظيفة الطباعة ()
بشكل افتراضي ، تقوم الدالةprint()
بطباعة جميع الوسيطات التي تفصل بينها بمسافة ووضع الرمز الجديد بعده. يمكن تغيير هذا السلوك باستخدام وسيطات الكلمات الأساسية sep
(الفاصل) end
.print(1, 2, 3) print(4, 5, 6) print(1, 2, 3, sep=', ', end='. ') print(4, 5, 6, sep=', ', end='. ') print() print(1, 2, 3, sep='', end=' -- ') print(4, 5, 6, sep=' * ', end='.')