الخلاصة السريعة
المثال
from types import MappingProxyType
d={'a':4};p=MappingProxyType(d)
print(p['a'])
d['a']=9
print(p['a'])
try:p['a']=7
except TypeError:
print('TypeError')المخرجات: 4 ثم 9 ثم TypeError. [1] [2]
عرض الأصل
العرض يستعيد القيمة من القاموس نفسه عند القراءة. لم ننسخ بياناته وقت إنشاء p. [1] [2]
بعد التغيير في الأصل تظل القراءة ممكنة، لكن الإسناد عبر العرض مرفوض؛ يبقى d['a'] مساويًا لـ9. [1] [2]

النطاق
لذلك لا نعتمد العرض سجلًا للقيم القديمة. التجربة لا تختبر قواميس مخصصة أو أمن عزل البيانات. [1] [2]
المراجع
- Python: MappingProxyType
- CPython 3.12.14: descrobject.c
- موضوع تك: لغة بايثون — مفردات
- موضوع تك: تطبيقات بايثون — مفردات
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
