التكرارات (Iterators) في Python
1. ما هو التكرار (Iterator)؟
التكرار في Python هو كائن يسمح لنا بالتنقل بين العناصر في هيكل بيانات معين (مثل القائمة أو المجموعة أو القاموس) عن طريق تمرير عنصر واحد في كل مرة، بدلاً من الوصول إليها جميعًا دفعة واحدة.
2. كيفية عمل التكرارات؟
تعمل التكرارات في Python باستخدام دالتين أساسيتين:
- iter(): لتحويل كائن إلى مكرر (iterator).
- next(): للحصول على العنصر التالي من المكرر.
3. استخدام التكرارات مع القوائم
يمكننا استخدام التكرار للتنقل بين عناصر القائمة بطريقة بسيطة.
# تعريف قائمة
my_list = [1, 2, 3, 4]
# تحويل القائمة إلى تكرار
my_iter = iter(my_list)
# الحصول على العناصر باستخدام next()
print(next(my_iter)) # الناتج: 1
print(next(my_iter)) # الناتج: 2
print(next(my_iter)) # الناتج: 3
print(next(my_iter)) # الناتج: 4
4. استخدام التكرارات مع الحلقات
عادةً، يتم استخدام التكرارات مع حلقة for، حيث تقوم Python بتحويل الكائنات القابلة للتكرار تلقائيًا إلى مكررات وتنتقل بينها حتى تنتهي العناصر.
my_list = [1, 2, 3, 4]
for item in my_list:
print(item)
5. التكرارات المخصصة
يمكنك إنشاء كائن مخصص ليعمل كمكرر عن طريق تعريف دوال __iter__() و __next__() داخل فئة. مثال:
class MyIterator:
def __init__(self, max):
self.max = max
self.current = 0
def __iter__(self):
return self
def __next__(self):
if self.current < self.max:
self.current += 1
return self.current
else:
raise StopIteration
# استخدام التكرار المخصص
my_iter = MyIterator(5)
for num in my_iter:
print(num) # الناتج: 1، 2، 3، 4، 5
6. التدريبات العملية
التدريب 1: قم بإنشاء مكرر مخصص يعرض الأعداد الزوجية فقط حتى عدد معين.
التدريب 2: جرب تحويل قواميس أو مجموعات إلى مكررات، وتصفح عناصرها باستخدام next().

تعليقات
إرسال تعليق