fbpx

تعلم لغة البايثون – الدرس الحادي عشر القواميس Python Dictionaries

0

القاموس هو نوع بيانات مشابه للصفائف ، ولكنه يعمل مع المفاتيح والقيم بدلاً من الفهارس. يمكن الوصول إلى كل قيمة مخزنة في القاموس باستخدام مفتاح ، وهو أي نوع من الكائنات (سلسلة ، رقم ، قائمة ، إلخ) بدلاً من استخدام فهرسه لمعالجته.

على سبيل المثال ، يمكن تخزين قاعدة بيانات لأرقام الهواتف باستخدام قاموس مثل هذا:

phonebook = {}
phonebook["Akrem"] = 938477566
phonebook["Mounir"] = 938377264
phonebook["Abdelwahab"] = 947662781
print(phonebook)

سنحصل على النتيجة التالية عند التشغيل

{'Akrem': 938477566, 'Abdelwahab': 947662781, 'Mounir': 938377264}

بدلاً من ذلك ، يمكن تهيئة القاموس بنفس القيم في التدوين التالي:

phonebook = {
    "Akrem" : 938477566,
    "Mounir" : 938377264,
    "Abdelwahab" : 947662781
}
print(phonebook)

سنحصل على النتيجة التالية عند التشغيل

{'Akrem': 938477566, 'Abdelwahab': 947662781, 'Mounir': 938377264}

التكرار على القواميس

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

phonebook = {"Akrem" : 938477566,"Mounir" : 938377264,"Abdelwahab" : 947662781}
for name, number in phonebook.items():
    print("Phone number of %s is %d" % (name, number))

سنحصل على النتيجة التالية عند التشغيل

Phone number of Akrem is 938477566
Phone number of Abdelwahab is 947662781
Phone number of Mounir is 938377264

إزالة قيمة

لإزالة فهرس محدد ، استخدم أحد الرموز التالية:

phonebook = {
   "Akrem" : 938477566,
   "Mounir" : 938377264,
   "Abdelwahab" : 947662781
}
del phonebook["Akrem"]
print(phonebook)

سنحصل على النتيجة التالية عند التشغيل

{'Abdelwahab': 947662781, 'Mounir': 938377264}

أو:

phonebook = {
   "John" : 938477566,
   "Mounir" : 938377264,
   "Abdelwahab" : 947662781
}
phonebook.pop("John")
print(phonebook)

سنحصل على النتيجة التالية عند التشغيل

{'Abdelwahab': 947662781, 'Mounir': 938377264}

تمرين

أضف “جيك” إلى دليل الهاتف برقم الهاتف 938273443 ، وأزل جيل من دفتر الهاتف.

phonebook = {
    "John" : 938477566,
    "Mounir" : 938377264,
    "Abdelwahab" : 947662781
}

# اكتب الرمز الخاص بك هنا


# كود الاختبار
if "Jake" in phonebook:
    print("Jake is listed in the phonebook.")
if "Abdelwahab" not in phonebook:
    print("Abdelwahab is not listed in the phonebook.")

الحل

phonebook = {
    "John" : 938477566,
    "Mounir" : 938377264,
    "Abdelwahab" : 947662781
}

# اكتب الرمز الخاص بك هنا
phonebook["Jake"] = 938273443
del phonebook["Abdelwahab"]

# كود الاختبار
if "Jake" in phonebook:
    print("Jake is listed in the phonebook.")
if "Abdelwahab" not in phonebook:
    print("Abdelwahab is not listed in the phonebook.")

سنحصل على النتيجة التالية عند التشغيل

<script.py> output:
    Jake is listed in the phonebook.
    Abdelwahab is not listed in the phonebook.

الدرس الثاني عشر

اترك رد

لن يتم نشر عنوان بريدك الإلكتروني.