iter() الحصول على مُكرِّر

آخر تحديث: 2026-09-22

iter() الحصول على مُكرِّر

تُرجع iter(obj) مُكرِّر obj؛ وتُرجع iter(callable, sentinel) مُكرِّرًا يستدعي callable مرارًا حتى يُرجع sentinel.

التصنيفالدوال المدمجة
النوعدالة مدمجة
إصدار بايثونall

📝 الصياغة

iter(object[, sentinel])

⚙️ المعاملات

object مطلوبAn iterable; must be callable when sentinel is given.
sentinel اختياريSentinel: the callable is repeatedly called until it returns this value.(القيمة الافتراضية:None)

القيمة المُعادة:An iterator: obj's iterator, or a callable-driven iterator in the two-arg form.

💥 الاستثناءات

▶ مثال

عدّل الكود واضغط تشغيل لرؤية النتيجة في لوحة المخرجات:

المخرجات:

1 2
المزيد من الحالات قادم قريباً — تابعونا.

❓ أسئلة شائعة

Qما العلاقة بين iter() و next()؟
Aiter(obj) يحصل على المكرر، وnext(it) يسحب العناصر واحدًا واحدًا؛ داخليًا حلقة for عبارة عن تركيبة iter() + next().
Qلماذا الصيغة بوسيطتين iter(func, sentinel)؟
Aتستدعي func مرارًا حتى تُرجع sentinel فتتوقف، مثل iter(lambda: input(), 'quit')، مناسبة لسيناريوهات «القراءة حتى علامة النهاية».
Qما الكائنات التي يمكن تمريرها إلى iter()؟
Aالكائنات التي تنفذ __iter__ (list و dict و str و set وغيرها) أو بروتوكول التسلسل __getitem__؛ تمرير كائن عادي مثل عدد صحيح يُثير TypeError.
Qهل iter() كسول؟
Aنعم، تُنشئ iter() المكرر فقط دون القيام بعبور فعلي؛ لا تُسحب القيم إلا عند next() أو حلقة for.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%