📢 تسلط بر تابع ()range 🐍
در ادامه قراره یه ابزار کلیدی تو پایتون به اسم ()range رو از صفر تا صد بررسی کنیم! 😎
این تابع برای ساخت دنبالههای عددی، پیمایش تو حلقهها، و حتی کارهای پیچیدهتر عالیه. از مفاهیم پایه تا ترفندهای حرفهای، همهچیز اینجاست! 🚀
بریم شروع کنیم!
تابع ()range چیه؟ 🤔
تابع ()range یه تابع داخلی (built-in) تو پایتونه که یه دنباله عددی تولید میکنه. این دنباله معمولاً تو حلقهها، ساخت فهرستها، یا مدیریت ایندکسها استفاده میشه. نکته مهم اینه که ()range یه شیء از نوع range میسازه که خیلی بهینهست، چون اعداد رو بهصورت تنبل (lazy) و فقط موقع نیاز تولید میکنه، نه اینکه کل فهرست رو تو حافظه نگه داره.
—-—-—-—-—-—-—-—-—-—-—
📝 سینتکس:
range(start, stop, step)
🔸 start: عدد شروع (اختیاری، پیشفرض 0).
🔸 stop: عدد پایان (اجباری، خودش شامل نمیشه).
🔸 step: فاصله بین اعداد (اختیاری، پیشفرض 1).
📌 نکته: خروجی ()range یه شیء rangeه، نه فهرست. برای تبدیل به فهرست، از ()list استفاده کن:
numbers = list(range(5))
print(numbers) # Khoroji: [0, 1, 2, 3, 4]
—-—-—-—-—-—-—-—-—-—-—
💠 کاربردهای اصلی ()range
1️⃣ پیمایش تو حلقههای for
تابع ()range برای تکرار یه تعداد مشخص تو حلقههای for خیلی پرکاربرده.
✨ مثال ساده (از 0 تا stop-1):
for num in range(5):
print(f"Adad: {num}")
# Khoroji:
# Adad: 0
# Adad: 1
# Adad: 2
# Adad: 3
# Adad: 4
✨ مثال با start و stop:
for num in range(2, 7):
print(f"Adad: {num}")
# Khoroji:
# Adad: 2
# Adad: 3
# Adad: 4
# Adad: 5
# Adad: 6
✨ مثال با step:
for num in range(0, 10, 2):
print(f"Zoj: {num}")
# Khoroji:
# Zoj: 0
# Zoj: 2
# Zoj: 4
# Zoj: 6
# Zoj: 8
—-—-—-—-—-—-—-—-—-—-—
2️⃣ ساخت فهرستهای عددی
با تبدیل ()range به فهرست، میتونی دنبالههای عددی بسازی.
✨ مثال:
numbers = list(range(1, 6))
print(numbers) # Khoroji: [1, 2, 3, 4, 5]
✨ مثال با step منفی (معکوس):
reverse_numbers = list(range(10, 0, -1))
print(reverse_numbers) # Khoroji: [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
—-—-—-—-—-—-—-—-—-—-—
3️⃣ پیمایش با ایندکس تو فهرستها
تابع ()range با ()len برای دسترسی به ایندکسهای فهرست استفاده میشه.
✨ مثال:
fruits = ["sib", "moz", "portoghal"]
for i in range(len(fruits)):
print(f"Index {i}: {fruits[i]}")
# Khoroji:
# Index 0: sib
# Index 1: moz
# Index 2: portoghal
💡 ترفند بهتر: به جای range(len())، از ()enumerate استفاده کن که خواناتر و بهینهتره:
for i, fruit in enumerate(fruits):
print(f"Index {i}: {fruit}")
💯 @PythonForYou 🧑💻👩💻