0Pricing
Python Academy · درس

اختصارات المجموعات والقواميس

طبّق أنماط الاختصارات على المجموعات والقواميس

اختصارات المجموعات والقواميس درس مجاني في Python Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Python Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Python Academy 4 دروس في المجموع.

مقدمة

تعمل صياغة الاستيعاب نفسها مع المجموعات والقواميس، فتنتج عناصر فريدة وتعيينات مفتاح-قيمة على التوالي.

صياغة استيعاب المجموعات

تستخدم {expression for item in iterable} الأقواس المعقوفة دون نقطتين. والنتيجة مجموعة غير مرتبة وفريدة.
unique_lens = {len(w) for w in ['apple','banana','fig']}
print(unique_lens)

إزالة التكرارات باستيعاب المجموعات

تُحذف أي تعبيرات مكررة تلقائيًا دون تنبيه. وينتج عن {x%3 for x in range(9)} المجموعة ‎{0,1,2}‎.
mods = {x % 3 for x in range(9)}
print(mods)

استيعاب المجموعات مع شرط

ينتج عن {x for x in range(20) if x%2==0 and x%3==0} أعداد قابلة للقسمة على 2 و3 معًا.
print({x for x in range(20) if x%2==0 and x%3==0})

صياغة استيعاب القواميس

تستخدم {key_expr: val_expr for item in iterable} الصيغة key:value قبل for، وتنشئ قاموسًا.
squares = {x: x**2 for x in range(5)}
print(squares)

استيعاب القواميس مع شرط

تصفّي {k: v for k, v in d.items() if v > 0} القاموس بحيث يحتفظ بالقيم الموجبة فقط.
d = {'a': 1, 'b': -2, 'c': 3}
pos = {k: v for k, v in d.items() if v > 0}
print(pos)

عكس قاموس

تبدّل {v: k for k, v in d.items()} المفاتيح والقيم. ويشترط ذلك أن تكون جميع القيم فريدة وقابلة للتجزئة.
d = {'a': 1, 'b': 2, 'c': 3}
print({v: k for k, v in d.items()})

التجميع باستيعاب القواميس

تجمع {letter: [w for w in words if w[0]==letter] for letter in 'abc'} الكلمات حسب الحرف الأول.
words = ['apple','ant','banana','cherry','cat']
grouped = {l: [w for w in words if w.startswith(l)] for l in 'abc'}
print(grouped)

دمج قائمتين في قاموس

يُعد {k: v for k, v in zip(keys, vals)} أوضح من dict(zip(keys, vals)) عندما تحتاج إلى تحويل البيانات.
keys = ['x', 'y', 'z']
vals = [1, 4, 9]
print({k: v**0.5 for k, v in zip(keys, vals)})

استيعاب القواميس المتداخل

ينشئ {i: {j: i*j for j in range(3)} for i in range(3)} جدول ضرب على شكل قواميس متداخلة.
table = {i: {j: i*j for j in range(3)} for i in range(3)}
print(table)

متى تستخدم كل نوع

استخدم استيعاب المجموعات عندما تحتاج إلى قيم فريدة، واستيعاب القواميس عندما تحتاج إلى تعيين مفتاح-قيمة، واستيعاب القوائم عندما يكون الترتيب مهمًا.
words = ['hello', 'world', 'hello']
unique = {w for w in words}
lengths = {w: len(w) for w in unique}
print(lengths)

تحقق سريع

ما الفرق التركيبي الأساسي بين استيعاب المجموعات واستيعاب القواميس؟

خلاصة

استيعاب المجموعات: {expr for x in it}. استيعاب القواميس: {k: v for x in it}. يدعم كلاهما التصفية باستخدام if. ويتطلب القاموس مفاتيح فريدة وقابلة للتجزئة.

واصل التقدم

ممتاز! تابع إلى الدرس التالي لتعميق مهاراتك.

الأسئلة الشائعة

هل درس «اختصارات المجموعات والقواميس» مجاني؟

نعم — نص درس «اختصارات المجموعات والقواميس» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Python Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Python Academy 4 دروس في المجموع.

ماذا ستتعلم في «اختصارات المجموعات والقواميس»؟

طبّق أنماط الاختصارات على المجموعات والقواميس تتمرن على Python Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Python Academy؟

لا تُشترط خبرة سابقة. Python Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «اختصارات المجموعات والقواميس»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Python Academy هذا؟

نعم. كل درس في Python Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. اختصارات القوائم البرمجية
  2. اختصارات المجموعات والقواميس
  3. تعبيرات المولّدات
  4. الكلمة المفتاحية yield
← العودة إلى Python Academy