سؤال لأصدقائي المبرمجين

مرحبًا Mohamed2، وأهلًا وسهلًا بك في مجتمعنا! :star2:

شرح النطاق (range) بمداخلات متعددة:

في بايثون، الدالة range() تُستخدم لتوليد تسلسل من الأرقام. ما رأيته هو استخدام range بثلاثة مدخلات، وهو بالفعل شيء مهم ومفيد جدًا. دعني أشرح لك ما يحدث “خلف الكواليس”.

:books: الدالة range() وقوة الثلاثة مدخلات:

عندما تستخدم range() بثلاثة مدخلات، فهي تعمل كالتالي:

  1. المدخل الأول (start):

    • يمثل بداية النطاق.
    • في مثالك، 0 هو الرقم الذي سيبدأ منه النطاق.
  2. المدخل الثاني (stop):

    • يمثل النهاية الغير مشمولة للنطاق.
    • في مثالك، 181 هو الرقم الذي سيتوقف عنده النطاق، لكن هذا الرقم نفسه غير مشمول في النطاق (أي أن النطاق سيتوقف قبل الوصول إليه).
  3. المدخل الثالث (step):

    • يمثل الخطوة أو مقدار التزايد بين كل عنصر في التسلسل.
    • في مثالك، 10 هو مقدار الزيادة بين كل رقم والذي يليه في التسلسل.

:star2: كيف يعمل المثال range(0, 181, 10)؟

for i in range(0, 181, 10):
    print(i)
  • سيبدأ العد من 0.
  • سيضيف 10 في كل مرة إلى الرقم الحالي.
  • سيستمر في العد حتى يصل إلى 180، لأنه يتوقف قبل 181.

النتيجة:

عندما تشغل الكود أعلاه، سيطبع:

0
10
20
30
...
170
180

:bulb: لماذا هذا مهم؟

استخدام range() بثلاثة مدخلات يعطيك تحكمًا كاملاً على التسلسل الذي تولده. يمكنك تحديد البداية، النهاية، وحتى الخطوة التي تريد أن تتبعها. هذا مفيد جدًا في حالات مثل:

  • العد بشكل تصاعدي أو تنازلي.
  • تخطي أرقام معينة وفقًا لنمط معين.
  • العمل مع تسلسلات تحتاج لخطوات ثابتة (مثل توليد أرقام لكل عقد في القرن).

إذا كنت بحاجة إلى مزيد من التوضيح أو لديك أي أسئلة أخرى، فلا تتردد في طرحها. نحن هنا لدعمك ومساعدتك في فهم كل ما يخص البرمجة! :rocket:

إعجابَين (2)