zip() التكرار المتوازي

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

zip() التكرار المتوازي

zip(*iterables) يجمع عدة كائنات قابلة للتكرار «بالتوازي» في مُكرِّر صفوف (يُقطع حسب الأقصر)؛ وعند strict=True يُشترط تساوي الأطوال.

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

📝 الصياغة

zip(*iterables, strict=False)

⚙️ المعاملات

iterables مطلوبVarargs: multiple iterables combined in parallel.
strict اختياريWhen True, require equal lengths (Python 3.10+).(القيمة الافتراضية:False)

القيمة المُعادة:An iterator of tuples pairing same-index elements; stops at the shortest input.

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

▶ مثال

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

المخرجات:

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

❓ أسئلة شائعة

Qماذا تفعل zip() مع تسلسلين مختلفي الطول؟
Aافتراضيًا تقطع عند الأقصر وتتخلص من العناصر الزائدة — مثل zip('abc', '12') لا تُنتج إلا ('a','1') و ('b','2')؛ لإثارة خطأ صريح استخدم zip(a, b, strict=True) (بايثون 3.10+).
Qما الذي تفعله zip(*lst)؟
Aتفك وتحوّل: zip(*[(1, 'a'), (2, 'b')]) تعطي (1, 2) و ('a', 'b')، محوّلة «الصفوف» إلى «أعمدة» — شائعة في تبديل المصفوفات.
Qماذا تُرجع zip()؟
Aتُرجع مكرر zip (كسول)؛ للقائمة استخدم list(zip(...))؛ استدعاؤها بدون وسيطات يُرجع مكررًا فارغًا.
Qكم عدد القوائم التي يمكن لـ zip() عبورها في آن واحد؟
Aأي عدد: for a, b, c in zip(x, y, z): يسحب القيم بالتوازي — وهو النمط القياسي لعبور عدة تسلسلات معًا.
Web-Tutorial.com

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

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

100%