كيفية إضافة وتحديث قواميس بايثون بسهولة

0 الأسهم
0
0
0
0

مقدمة

القاموس هو نوع بيانات مدمج في بايثون. وهو عبارة عن سلسلة من أزواج المفتاح والقيمة، حيث يكون كل مفتاح فريدًا ويرتبط بقيمة محددة. القواميس كائنات قابلة للتغيير، أي يمكنك تغيير محتواها دون تغيير هويتها. ومع ذلك، فإن مفاتيح القاموس ثابتة، ويجب أن تكون فريدة داخل كل قاموس. هذا يجعل القواميس فعالة للغاية في البحث والإدراج والحذف.

تُستخدم القواميس على نطاق واسع في بايثون لأغراض متنوعة، مثل إحصاء التكرارات، وتجميع البيانات، وتخزين الإعدادات. على الرغم من تعدد استخداماتها، لا تحتوي القواميس على طريقة إلحاق مدمجة. بدلاً من ذلك، هناك عدة طرق لإضافة وتحديث القاموس، ولكل منها استخداماتها ومزاياها الخاصة.

في هذه المقالة، ستتعلم طرقًا مختلفة لإضافة قواميس بايثون وتحديثها. ستتعلم كيفية استخدام مُعامل التعيين في بايثون، ودالة التحديث ()update، ومُعاملي دمج وتحديث القاموس. بنهاية هذا البرنامج التعليمي، ستكون قد اكتسبت فهمًا متينًا لكيفية إدارة القواميس ومعالجتها بفعالية في برامج بايثون.

أضف إلى قاموس بايثون باستخدام عامل التعيين =

لإضافة مفتاح جديد إلى القاموس يمكنك استخدام عامل التعيين =:

dict[key] = value

إذا كان المفتاح موجودًا بالفعل في القاموس، يقوم عامل التعيين بتحديث القيمة أو استبدالها.

يوضح المثال التالي كيفية إنشاء قاموس جديد ثم استخدام عامل التعيين = لتحديث قيمة وإضافة أزواج مفتاح-قيمة:

dict_example = {'a': 1, 'b': 2}
print("original dictionary: ", dict_example)
dict_example['a'] = 100 # existing key, overwrite
dict_example['c'] = 3 # new key, add
dict_example['d'] = 4 # new key, add 
print("updated dictionary: ", dict_example)

الناتج هو:

Output
original dictionary: {'a': 1, 'b': 2}
updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4}

يُظهر الإخراج أن قيمة a تم استبدالها بالقيمة الجديدة، وقيمة b لم تتغير، وتمت إضافة أزواج جديدة من المفتاح والقيمة لـ c وd.

إضافة قيم إلى قاموس بايثون دون الكتابة فوقها

يؤدي استخدام مُعامل التعيين = إلى استبدال قيم المفاتيح الحالية بالقيم الجديدة. إذا كنت تعلم أن تطبيقك قد يحتوي على مفاتيح مكررة، ولكنك لا ترغب في استبدال القيم الأصلية، يمكنك إضافة قيم مشروطة باستخدام عبارة if.

استمرارًا للمثال من القسم السابق، يمكنك استخدام عبارات if لإضافة أزواج القيمة الرئيسية الجديدة فقط إلى القاموس:

dict_example = {'a': 1, 'b': 2}
print("original dictionary: ", dict_example)
dict_example['a'] = 100 # existing key, overwrite
dict_example['c'] = 3 # new key, add
dict_example['d'] = 4 # new key, add 
print("updated dictionary: ", dict_example)
# add the following if statements
if 'c' not in dict_example.keys():
dict_example['c'] = 300
if 'e' not in dict_example.keys():
dict_example['e'] = 5
print("conditionally updated dictionary: ", dict_example)

الناتج هو:

Output
original dictionary: {'a': 1, 'b': 2}
updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4}
conditionally updated dictionary: {'a': 100, 'b': 2, 'c': 3, 'd': 4, 'e': 5}

يُظهر الإخراج أنه بسبب شرط if، فإن قيمة c لا تتغير عند تحديث القاموس بشكل مشروط.

الإضافة إلى قاموس Python باستخدام طريقة update().

يمكنك إضافة قاموس أو زوج متكرر من المفاتيح والقيم إلى قاموس باستخدام دالة update(). تستبدل دالة update() قيم المفاتيح الموجودة بقيم جديدة.

يوضح المثال التالي كيفية إنشاء قاموس جديد، واستخدام طريقة update() لإضافة زوج جديد من القيمة الرئيسية وقاموس جديد، وطباعة كل نتيجة:

site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary'}
print("original dictionary: ", site)
# update the dictionary with the author key-value pair
site.update({'Author':'Sammy Shark'})
print("updated with Author: ", site)
# create a new dictionary
guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}
# update the original dictionary with the new dictionary
site.update(guests)
print("updated with new dictionary: ", site)

الناتج هو:

Output
original dictionary: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary'}
updated with Author: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy Shark'}
updated with new dictionary: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy Shark', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}

يُظهر الناتج أن التحديث الأول يُضيف زوجًا جديدًا من المفاتيح والقيم، بينما يُضيف التحديث الثاني أزواجًا من المفاتيح والقيم من قاموس الضيف إلى قاموس الموقع. يُرجى ملاحظة أنه إذا كان تحديث القاموس يحتوي على مفتاح موجود، فسيتم استبدال القيمة القديمة بالتحديث.

إضافة إلى قاموس بايثون باستخدام عامل الدمج

يمكنك استخدام عامل دمج القاموس |، والذي يتم تمثيله بواسطة حرف الأنبوب، لدمج قاموسين وإرجاع كائن قاموس جديد.

يوضح المثال التالي كيفية إنشاء قاموسين واستخدام عامل الدمج لإنشاء قاموس جديد يحتوي على أزواج مفتاح-قيمة من كليهما:

site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary', 'Author':'Sammy'}
guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}
new_site = site | guests
print("site: ", site)
print("guests: ", guests)
print("new_site: ", new_site)

الناتج هو:

Output
site: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy'}
guests: {'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}
new_site: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}

تم دمج القاموسين في كائن قاموس جديد يحتوي على أزواج القيمة الرئيسية من كلا القاموسين.

إذا وُجد مفتاح في كلا القاموسين، تُؤخذ القيمة من القاموس الثاني، أو من المتغير الأيمن. في المثال التالي، لكلا القاموسين مفتاح يُسمى b:

dict1 = {'a':'one', 'b':'two'}
dict2 = {'b':'letter two', 'c':'letter three'}
dict3 = dict1 | dict2
print{"dict3: ", dict3}

الناتج هو:

Output
dict3: {'a': 'one', 'b': 'letter two', 'c': 'letter three'}

تم استبدال قيمة المفتاح b بقيمة المتغير الأيمن، dict2.

أضف إلى قاموس بايثون باستخدام عامل التحديث |=

يمكنك استخدام عامل تحديث القاموس |=، والذي يتم تمثيله بواسطة أحرف الأنبوب وعلامة المساواة، لتحديث القاموس في مكانه باستخدام القاموس أو القيم المحددة.

تمامًا مثل عامل الدمج |، إذا كان مفتاح موجودًا في كلا القواميس، فإن عامل التحديث |= يأخذ القيمة من المتغير الصحيح.

يوضح المثال التالي كيفية إنشاء قاموسين، واستخدام عامل التحديث لإضافة القاموس الثاني إلى القاموس الأول، ثم طباعة القاموس المحدث:

site = {'Website':'DigitalOcean', 'Tutorial':'How To Add to a Python Dictionary', 'Author':'Sammy'}
guests = {'Guest1':'Dino Sammy', 'Guest2':'Xray Sammy'}
site |= guests
print("site: ", site)

الناتج هو:

Output
site: {'Website': 'DigitalOcean', 'Tutorial': 'How To Add to a Python Dictionary', 'Author': 'Sammy', 'Guest1': 'Dino Sammy', 'Guest2': 'Xray Sammy'}

في المثال السابق، لم تكن هناك حاجة لإنشاء كائن قاموس ثالث لأن عامل التحديث يُعدِّل الكائن الأصلي. يُظهر الناتج أن قاموس الضيف مُضاف إلى قاموس الموقع الرئيسي.

نتيجة

في هذه المقالة، استخدمت طرقًا مختلفة لإضافة وتحديث قواميس Python.

تعليق واحد
اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

قد يعجبك أيضاً