0Pricing
Python Academy · درس

أساليب القواميس

استخدم get وkeys وvalues وitems وupdate وpop

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

مقدمة

تحتوي قواميس Python على مجموعة غنية من الأساليب لدمج البيانات وتحويلها والوصول إليها بأمان.

keys() وvalues() وitems()

تعيد هذه الأساليب كائنات عرض تعكس التغييرات في القاموس. حوّلوها إلى قائمة إذا احتجتم إلى لقطة ثابتة.
d = {'a': 1, 'b': 2}
print(list(d.keys()))
print(list(d.values()))
print(list(d.items()))

update()

يدمج d.update({'c': 3, 'd': 4}) قاموسًا آخر في القاموس الحالي. وتُستبدل المفاتيح الموجودة.
d = {'a': 1}
d.update({'b': 2, 'a': 99})
print(d)

استخدام pop() مع قيمة افتراضية

يزيل d.pop('key', default) المفتاح ويعيد قيمته. وإذا كان المفتاح غائبًا ولم تُحدَّد قيمة افتراضية، يُرفع KeyError.
d = {'a': 1, 'b': 2}
val = d.pop('a')
print(val, d)

popitem()

يزيل d.popitem() آخر زوج (key, value) أُدرج ويعيده. ويُرفع KeyError إذا كان القاموس فارغًا.
d = {'a': 1, 'b': 2}
print(d.popitem())
print(d)

setdefault()

يُدرج d.setdefault('key', default) القيمة الافتراضية إذا كان المفتاح غائبًا، ثم يعيد القيمة. ويجنبكم تكرار get + set.
d = {}
d.setdefault('count', 0)
d['count'] += 1
print(d)

الدمج باستخدام | ‏(Python 3.9 فأحدث)

يعيد d1 | d2 قاموسًا جديدًا مدمجًا. ويحدّث d1 |= d2 القاموس d1 في مكانه. وهذه الصيغة أوضح من update().
d1 = {'a': 1}
d2 = {'b': 2}
print(d1 | d2)

copy() وdeepcopy()

ينشئ d.copy() نسخة سطحية. أما القواميس المتداخلة، فاستخدموا copy.deepcopy(d) لتجنب المراجع المشتركة.
import copy
d = {'a': [1,2]}
deep = copy.deepcopy(d)
deep['a'].append(3)
print(d, deep)

Counter من collections

يحسب from collections import Counter; Counter('banana') تكرارات الأحرف تلقائيًا.
from collections import Counter
c = Counter('banana')
print(c)

defaultdict

ينشئ from collections import defaultdict; d = defaultdict(list) قائمة فارغة تلقائيًا للمفاتيح الغائبة.
from collections import defaultdict
d = defaultdict(list)
d['a'].append(1)
print(d)

OrderedDict ‏(ملاحظة عن الاستخدام القديم)

تحافظ القواميس العادية في Python 3.7 فأحدث على ترتيب الإدراج. وما يزال OrderedDict مفيدًا مع move_to_end() ومع المساواة الحساسة للترتيب.
from collections import OrderedDict
od = OrderedDict({'a':1,'b':2})
od.move_to_end('a')
print(list(od))

تحقق سريع

ماذا يفعل d.setdefault('key', 0) إذا لم يكن 'key' موجودًا في d؟

مراجعة

تشمل أساليب القاموس update وpop/popitem وsetdefault وcopy/deepcopy. استخدموا Counter لحساب التكرارات، وdefaultdict لتجنب التحقق من المفاتيح الغائبة، و| للدمج (في الإصدار 3.9 فأحدث).

تابعوا التقدم

عمل رائع! انتقلوا إلى الدرس التالي لمواصلة تطوير مهاراتكم.

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

هل درس «أساليب القواميس» مجاني؟

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

ماذا ستتعلم في «أساليب القواميس»؟

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

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

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

كم من الوقت يستغرق درس «أساليب القواميس»؟

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

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

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

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

  1. أساسيات القواميس
  2. أساليب القواميس
  3. المجموعات وعملياتها
  4. الاختصارات البرمجية للقواميس
← العودة إلى Python Academy