zip يقرن القيم بحسب مواضعها. [1] [2]
الخلاصة السريعة
strict=True يكشف اختلاف الطولين عند الاستهلاك، لا عند الإنشاء. [1] [2]
- العادي يتوقف عند الأقصر؛ لا يملأ العنصر الزائد. [1] [2]
- لمدخلينا، الزوجان (4,1) و(8,2)؛ القيمة 12 بلا زوج. [1] [2]
- مع strict، الطلب الثالث يرفع ValueError بعد إخراج الزوجين؛ والخطأ لا يمحوهما. [1] [2]
- إذا تساوى الطولان ينتهي طبيعيًا، حتى عند فراغ القائمتين. [1] [2]
- قوائم منتهية في 3.12.14؛ التوقف المبكر قد يخفي الخطأ. [1] [2]
المثال
a=[4,8,12]
b=[1,2]
z=zip(a,b,strict=True)
print(next(z))
print(next(z))
try:
next(z)
except ValueError:
print("mismatch")يطبع (4, 1) ثم (8, 2) ثم mismatch. إنشاء z لم يرفع الخطأ. [1] [2]
المقارنة
list(zip(a,b)) يعيد [(4,1),(8,2)] دون خطأ. العادي لا يقترن فيه 12 بشيء. [1] [2]
الاستهلاك
إذا توقفت بعد الزوجين، لم تصل إلى طلب اكتشاف الاختلاف؛ strict ليس فحصًا مسبقًا للقائمتين. الخطأ لا يمحو المخرجات السابقة. [1] [2]

النطاق
قائمتان منتهيتان طازجتان في 3.12.14. تساوي الطولين يسمح بنهاية طبيعية. [1] [2]
المراجع
- Python: zip، الاقتران والإنهاء
- PEP 618: strict ووقت الخطأ
- موضوع تك: لغة بايثون — مفردات
- موضوع تك: تطبيقات بايثون — مفردات
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
