المُكرّرات والقابلة للتكرار
استكشف بروتوكول المُكرّر لإنشاء سلوك تكرار مخصص
المُكرّرات والقابلة للتكرار درس مجاني في Python Academy على CoddyKit. هذا هو الدرس 5 من أصل 5. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Python Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Python Academy 5 دروس في المجموع.
مقدمة إلى المكررات والكائنات القابلة للتكرار
مقدمة إلى المكررات والكائنات القابلة للتكرار
المكررات والكائنات القابلة للتكرار مفهومان أساسيان في Python يتيحان لك العمل مع تسلسلات البيانات. وهما أساس الحلقات والاستيعابات والمولّدات.
في هذا الدرس، ستتعلم كيفية عمل المكررات والكائنات القابلة للتكرار وكيفية إنشاء مكرراتك الخاصة.

ما الكائن القابل للتكرار؟
ما الكائن القابل للتكرار؟
الكائن القابل للتكرار هو أي كائن في Python يمكن تكراره باستخدام حلقة for. ومن أمثلته القوائم والصفوف والمجموعات والقواميس.
# Example of an iterable
my_list = [1, 2, 3]
for item in my_list:
print(item) # Outputs: 1, 2, 3ما المكرّر؟
ما المكرّر؟
المكرّر هو كائن يمثل تدفقًا من البيانات. وهو يطبّق الطريقتين __iter__() و__next__().
# Example of an iterator
my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator)) # Outputs: 1
print(next(iterator)) # Outputs: 2
print(next(iterator)) # Outputs: 3الفرق بين الكائنات القابلة للتكرار والمكررات
الفرق بين الكائنات القابلة للتكرار والمكررات
يمكن تكرار الكائنات القابلة للتكرار، مثل القوائم، بينما تنتج المكررات عنصرًا واحدًا في كل مرة باستخدام الطريقة next(). ويصبح الكائن القابل للتكرار مكرّرًا عند تمريره إلى الدالة iter().
إنشاء مكررات مخصصة
إنشاء مكررات مخصصة
يمكنك إنشاء مكررات مخصصة بتعريف صنف يحتوي على الطريقتين __iter__() و__next__():
# Custom iterator example
class Counter:
def __init__(self, start, end):
self.current = start
self.end = end
def __iter__(self):
return self
def __next__(self):
if self.current > self.end:
raise StopIteration
self.current += 1
return self.current - 1
counter = Counter(1, 5)
for number in counter:
print(number) # Outputs: 1, 2, 3, 4, 5استخدام الدالة <code>iter()</code>
استخدام الدالة iter()
تُرجع الدالة iter() كائن مكرّر من كائن قابل للتكرار:
# Using iter() on a list
my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator)) # Outputs: 1معالجة <code>StopIteration</code>
معالجة StopIteration
عند استنفاد المكرّر، فإنه يرفع استثناء StopIteration. وهذه هي الطريقة التي تشير بها Python إلى نهاية التسلسل.
# Handling StopIteration
my_list = [1, 2, 3]
iterator = iter(my_list)
while True:
try:
print(next(iterator))
except StopIteration:
breakالمكررات مقابل المولّدات
المكررات مقابل المولّدات
المولّدات طريقة أبسط لإنشاء المكررات. فهي تطبّق تلقائيًا الطريقتين __iter__() و__next__().
# Example of a generator as an iterator
def my_generator():
yield 1
yield 2
yield 3
for value in my_generator():
print(value) # Outputs: 1, 2, 3الأخطاء الشائعة في استخدام المكررات
الأخطاء الشائعة في استخدام المكررات
إليك بعض الأخطاء التي ينبغي تجنبها:
- نسيان تطبيق الطريقتين
__iter__()و__next__()في المكررات المخصصة. - عدم معالجة استثناءات
StopIterationعلى نحو صحيح. - الخلط بين المكررات والكائنات القابلة للتكرار.
ما الذي تعلمناه؟
ما الذي تعلمناه؟
في هذا الدرس، تعلمت:
- الفرق بين الكائنات القابلة للتكرار والمكررات.
- كيفية استخدام
__iter__()و__next__()لإنشاء مكررات مخصصة. - كيفية استخدام الدالة
iter()ومعالجة استثناءاتStopIteration. - كيفية تبسيط المولّدات لإنشاء المكررات.
أحسنتم! لننتقل إلى الموضوع التالي.

الأسئلة الشائعة
هل درس «المُكرّرات والقابلة للتكرار» مجاني؟
نعم — نص درس «المُكرّرات والقابلة للتكرار» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Python Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Python Academy 5 دروس في المجموع.
ماذا ستتعلم في «المُكرّرات والقابلة للتكرار»؟
استكشف بروتوكول المُكرّر لإنشاء سلوك تكرار مخصص تتمرن على Python Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Python Academy؟
لا تُشترط خبرة سابقة. Python Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 5 من أصل 5.
كم من الوقت يستغرق درس «المُكرّرات والقابلة للتكرار»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Python Academy هذا؟
نعم. كل درس في Python Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- Decorators
- المولّدات
- مديرو السياق (عبارات with)
- الاستيعابات (القوائم والمجموعات والقواميس)
- المُكرّرات والقابلة للتكرار