range()
توليد متسلسلة أرقام — range() range()
range() تُنشئ متسلسلة أرقام بين بداية ونهاية بخطوة معيّنة، وتُستخدم غالبًا مع حلقات for.
range ليست دالة تُرجع قائمة، بل نوع بيانات متسلسل بحد ذاته: يمثّل مجموعة الأرقام دون بناء كل قيمة فورًا في الذاكرة، بل يولّدها عند الحاجة فقط أثناء المرور عليها.
يمكن استدعاؤها بمعامل واحد (النهاية فقط) أو ثلاثة معاملات (البداية، النهاية، والخطوة).
الصياغة
range(stop) range(start, stop, step=1)
📄 مثال
for i in range(5):
print(i) # 0 1 2 3 4
for i in range(2, 10, 2):
print(i) # 2 4 6 8
print(list(range(3))) # [0, 1, 2]أهم المعاملات
| المعامل | الوظيفة |
|---|---|
| start | الرقم الذي تبدأ منه المتسلسلة (افتراضيًا 0) |
| stop | الرقم الذي تتوقّف عنده المتسلسلة (غير مشمول) |
| step | مقدار الزيادة بين رقم وآخر (افتراضيًا 1، يمكن أن يكون سالبًا) |
💡 نصائح عملية
- range لا يبني كل الأرقام فورًا في الذاكرة — يعمل بكفاءة حتى مع ملايين القيم
- حوّلها لقائمة فعلية بـ list(range(...)) فقط لو احتجت تخزين القيم لا مجرد المرور عليها
⚠️ أخطاء شائعة
- نسيان أن range(n) لا يشمل الرقم n نفسه — آخر قيمة هي n - 1
- استخدام step سالب دون عكس ترتيب start وstop، فتنتج متسلسلة فارغة
خصائص ذات صلة
🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار PYTHON الكامل بالعربي.