إنتاج القيم واحدة واحدة
لديك ثلاثة أسماء محطات وتريدها واحدًا بعد الآخر. السطر الأول على الشاشة سيكون north. السطر التالي سيكون east. السطر الأخير سيكون south.
def stations():
yield "north"
yield "east"
yield "south"
route = stations()
print(next(route))
print(next(route))
print(next(route))
تعرض الشاشة ثلاثة أسطر. أول print يكتب north ولا يكتب شيئًا غيره. السطر yield "north" يسلّم هذا الاسم إلى هذا print. لا يُكتب east إلا عندما يطلبه print الثاني. print الثاني يكتب east. print الثالث يكتب south. لا يضع print واحد الأسماء الثلاثة في سطر واحد. انتهى البرنامج. لا يوجد سطر رابع. لا يُكتب None على هذه الشاشة.
📊 أي print يكتب أي سطر
| أي print | السطر على الشاشة |
|---|---|
| أول print(next(route)) | north |
| ثاني print(next(route)) | east |
| ثالث print(next(route)) | south |
بعد south لا يبقى في stations أي yield. print(next(route)) رابع ليس في هذا البرنامج. إذا أضفت هذا السطر فإنه يتوقف بالخطأ StopIteration، لأنه لا يوجد اسم تالٍ. لا يُكتب None. تبقى الشاشة التي لديك north ثم east ثم south.
يمكنك الآن أن تطلب اسم محطة واحدًا، ثم الاسم التالي، ثم الأخير. تعرض الشاشة north ثم east ثم south. الصفحة التالية تضع غلافًا حول دالة.
اسم واحد ثم الاسم التالي
أول print يكتب north. ثاني print يكتب east. ثالث print يكتب south. تعرض الشاشة ثلاثة أسطر: north ثم east ثم south. الصفحة التالية تضع غلافًا حول دالة.
🧠 اختبر معرفتك
اختبر معرفتك
تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع
📝 التعليمات
- اقرأ كل سؤال بعناية
- اختر أفضل إجابة لكل سؤال
- يمكنك إعادة الاختبار عدة مرات كما تريد
- سيتم عرض تقدمك في الأعلى