0Pricing
Python Academy · درس

المُكرّرات والقابلة للتكرار

استكشف بروتوكول المُكرّر لإنشاء سلوك تكرار مخصص

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

مقدمة إلى المكررات والكائنات القابلة للتكرار

مقدمة إلى المكررات والكائنات القابلة للتكرار

المكررات والكائنات القابلة للتكرار مفهومان أساسيان في Python يتيحان لك العمل مع تسلسلات البيانات. وهما أساس الحلقات والاستيعابات والمولّدات.

في هذا الدرس، ستتعلم كيفية عمل المكررات والكائنات القابلة للتكرار وكيفية إنشاء مكرراتك الخاصة.

المُكرّرات والقابلة للتكرار — رسم توضيحي 1

ما الكائن القابل للتكرار؟

ما الكائن القابل للتكرار؟

الكائن القابل للتكرار هو أي كائن في 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.
  • كيفية تبسيط المولّدات لإنشاء المكررات.

أحسنتم! لننتقل إلى الموضوع التالي.

المُكرّرات والقابلة للتكرار — رسم توضيحي 11

الأسئلة الشائعة

هل درس «المُكرّرات والقابلة للتكرار» مجاني؟

نعم — نص درس «المُكرّرات والقابلة للتكرار» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 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 يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. Decorators
  2. المولّدات
  3. مديرو السياق (عبارات with)
  4. الاستيعابات (القوائم والمجموعات والقواميس)
  5. المُكرّرات والقابلة للتكرار
← العودة إلى Python Academy