القاموس الثعبان (قاموس)
متغير آخر هو نموذج حاوية القاموس، ويمكن تخزين أي نوع من الكائن.
كل مفتاح القاموس (الرئيسية => قيمة) من النقطتين(:) مقسمة بين كل زوج مع فاصلة (،)تقسيم، بما في ذلك القاموس بأكمله في الأقواس المتعرجة({})،والشكل هو على النحو التالي:
d = {key1 : value1, key2 : value2 }
يجب أن يكون مفتاح فريدة من نوعها، ولكن القيمة ليست ضرورية.
قيمة يمكن أن تتخذ أي نوع البيانات، ولكن يجب أن يكون المفتاح غير قابل للتغيير، مثل الجمل، والأرقام، أو الصفوف.
ومثال القاموس البسيط:
dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
هكذا أيضا إنشاء القاموس:
dict1 = { 'abc': 456 }; dict2 = { 'abc': 123, 98.6: 37 };
الوصول إلى القيم القاموس
مفتاح المقابلة في الأقواس المربعة مألوفة التالي أمثلة:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; print "dict['Name']: ", dict['Name']; print "dict['Age']: ", dict['Age'];
أمثلة من إخراج أعلاه:
dict['Name']: Zara dict['Age']: 7
إذا كان هناك أي مفتاح للوصول إلى قاموس البيانات، فإنه سيتم إخراج الخطأ التالية:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; print "dict['Alice']: ", dict['Alice'];
أمثلة من إخراج أعلاه:
dict['Alice']: Traceback (most recent call last): File "test.py", line 5, in <module> print "dict['Alice']: ", dict['Alice']; KeyError: 'Alice'
تعديل القاموس
طريقة لإضافة محتوى جديد إلى القاموس لإضافة أزواج مفتاح / قيمة جديدة أو تعديل أو حذف أزواج المفتاح / القيمة التالية الأمثلة القائمة:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; dict['Age'] = 8; # update existing entry dict['School'] = "DPS School"; # Add new entry print "dict['Age']: ", dict['Age']; print "dict['School']: ", dict['School'];أمثلة من إخراج أعلاه:
dict['Age']: 8 dict['School']: DPS School
حذف العناصر القاموس
يمكن حذف عنصر واحد يمكن أن يكون القاموس فارغة، أفرغت عملية واحدة فقط.
لحذف القاموس مع ديل الأوامر، الأمثلة التالية:
#!/usr/bin/python # -*- coding: UTF-8 -*- dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; del dict['Name']; # 删除键是'Name'的条目 dict.clear(); # 清空词典所有条目 del dict ; # 删除词典 print "dict['Age']: ", dict['Age']; print "dict['School']: ", dict['School'];
ولكن هذا يثير استثناء، لأن بعد ديل القواميس لم يعد موجودا:
dict['Age']: Traceback (most recent call last): File "test.py", line 8, in <module> print "dict['Age']: ", dict['Age']; TypeError: 'type' object is unsubscriptable
ملاحظة: سيتم مناقشة الطريقة التالية ديل ().
خصائص مفتاح القاموس
يمكن أن تؤخذ القيم القاموس سبيل المثال لا الحصر، يمكن لأي كائن الثعبان أن يكون على حد سواء وجوه القياسية، يمكن أن تكون المعرفة من قبل المستخدم، ولكن لا يعمل المفتاح.
نقطتين هامتين لنتذكر:
1) لا يسمح يظهر نفس المفتاح مرتين. تم تعيينه إذا كان المفتاح نفسه مرتين، سيذكر القيمة الأخيرة عند إنشاء الأمثلة التالية:
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}; print "dict['Name']: ", dict['Name'];
أمثلة من إخراج أعلاه:
dict['Name']: Manni
2) يجب أن يتم تغيير المفتاح، بحيث يمكنك استخدام الرقمية، سلسلة، أو الصفوف (tuple) للقيام بدور، وقائمة لا تفعل ذلك مع الأمثلة التالية:
#!/usr/bin/python dict = {['Name']: 'Zara', 'Age': 7}; print "dict['Name']: ", dict['Name'];
أمثلة من إخراج أعلاه:
Traceback (most recent call last): File "test.py", line 3, in <module> dict = {['Name']: 'Zara', 'Age': 7}; TypeError: list objects are unhashable
القاموس المدمج في وظائف وطرق
يحتوي القاموس بيثون المدمج في وظائف التالية:
لا. | وظيفة والوصف |
---|---|
1 | CMP (dict1، dict2) مقارنة العنصرين في القاموس. |
2 | ليون (ديكت) عد عدد من العناصر القاموس، وهي العدد الكلي للمفاتيح. |
3 | شارع (ديكت) للطباعة التمثيل إخراج سلسلة من القاموس. |
4 | نوع (متغير) إرجاع نوع المتغير المدخلات، وإذا كان المتغير هو قاموس بإرجاع القاموس. |
قاموس يحتوي على الثعبان طريقة المضمنة التالية:
لا. | وظيفة والوصف |
---|---|
1 | radiansdict.clear () حذف كل العناصر الموجودة في القاموس |
2 | radiansdict.copy () إرجاع نسخة الضحلة من القاموس |
3 | radiansdict.fromkeys () إنشاء قاموس جديد لعناصر تسلسل يليها قيام مفتاح القاموس، فال كقاموس من كل مفتاح المقابلة لقيمة الأولية |
4 | radiansdict.get (مفتاح، والتقصير = لا يوجد) إرجاع قيمة المفتاح المحدد، إذا كانت قيمة الإرجاع ليست في القاموس القيم الافتراضية |
5 | radiansdict.has_key (مفتاح) عودة صحيح إذا كان المفتاح في ديكت القاموس، وبخلاف ذلك كاذبة |
6 | radiansdict.items () إرجاع اجتياز قائمة (رئيسية، قيمة) الصفوف مجموعة |
7 | radiansdict.keys () لإرجاع قائمة من كافة القاموس مفاتيح |
8 | radiansdict.setdefault (مفتاح، والتقصير = لا يوجد) والحصول على () هو ما شابه ذلك، ولكن إذا كان المفتاح غير موجود في القاموس، وسوف تضيف قيمة إلى المفاتيح الافتراضية |
9 | radiansdict.update (dict2) Dict2 القاموس أزواج مفتاح / قيمة في التحديث إلى ديكت |
10 | radiansdict.values () لإرجاع قائمة من كافة القيم في القاموس |