anext() العنصر التالي في المُكرِّر غير المتزامن

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

anext() العنصر التالي في المُكرِّر غير المتزامن

anext(awaitable) يُعيد العنصر التالي من awaitable؛ وعند النفاد يرفع StopAsyncIteration.

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

📝 الصياغة

anext(awaitable[, default])

⚙️ المعاملات

iterator مطلوبAn async iterator.
default اختياريValue returned on exhaustion, when provided.(القيمة الافتراضية:None)

القيمة المُعادة:The next item of the async iterator, or default if exhausted.

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

▶ مثال

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

المخرجات:

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

❓ أسئلة شائعة

Qما الفرق بين anext() و next()؟
Aanext() النسخة غير المتزامنة من next()، للمكررات غير المتزامنة؛ يجب استدعاؤها كـ await anext(it) وفقط داخل دالة async.
Qماذا يحدث عند نفاد anext(it)؟
Aيُثار StopAsyncIteration؛ تمرير default يُرجع تلك القيمة بدل الاستثناء، بنفس آلية next().
Qهل يمكن تمرير مكرر عادي إلى anext()؟
Aلا — يُثار TypeError؛ تقبل anext() المكررات غير المتزامنة فقط (الكائنات التي تنفذ __anext__).
Qفي أي سيناريو أستخدم anext()؟
Aعند استهلاك مولد غير متزامن أو مكرر غير متزامن يدويًا، مثل await anext(it) للحصول على القيمة التالية — وهو النظير غير المتزامن لـ next() في الكود المتزامن.
Web-Tutorial.com

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

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

100%