الفرق بين المراجعتين لصفحة: «Python/vars»
لا ملخص تعديل |
لا ملخص تعديل |
||
سطر 30: | سطر 30: | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* [[Python/ | * [[Python/dict|القواميس في بايثون]]. | ||
* [[Python/types/MappingProxyType|types.MappingProxyType]]. | * [[Python/types/MappingProxyType|types.MappingProxyType]]. | ||
* [[Python/ | * الدالة <code>[[Python/locals|locals()]]</code>: تحدث قاموسًا يُمثّل جدول الرموز المحليّ وتُعيده. | ||
== مصادر == | == مصادر == |
المراجعة الحالية بتاريخ 07:59، 11 يونيو 2018
تعيد الدّالة vars()
قيمة الخاصيّة __dict__
الخاصّة بوحدة، أو صنف، أو نُسخة، أو أيّ كائن يمتلك خاصيّةً باسم __dict__
.
تملك الكائنات مثل الوحدات والنّسخ خاصيّة __dict__
يُمكن تحديثها، لكنّ كائنات أخرى قد تفرض قيودًا على خاصيّة __dict__
الخاصّة بها (فمثلا، يُمكن للأصناف استعمال النّوع types.MappingProxyType
لمنع تحديث القاموس مُباشرةً).
البنية العامة
vars([object])
المعاملات
object
مُعامل اختياريّ يُمثّل الكائن المرغوب الحصول على قيمة الخاصيّة __dict__
الخاصّة به.
القيمة المعادة
قيمة الخاصيّة __dict__
الخاصّة بالكائن، وتُمثّل قيمته قاموسًا يحتوي على خاصيّات الكائن القابلة للكتابة (أي تلك التي تقبل إسناد قيمة لها).
إن لم تُمرّر للدّالة أيّة مُعاملات، فاستدعاؤها مُشابه لاستدعاء الدّالة locals()
. لكن لاحظ أنّ قاموس المتغيّرات المحليّة locals()
مُفيد للقراءة فقط لأنّ مُحاولات تحديثه تُتَجاهَل.
أمثلة
المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:
>>> class A:
... x = 1
...
...
>>> vars(A)
mappingproxy({'__module__': '__console__', 'x': 1, '__dict__': <attribute '__dict__' of 'A' obj
ects>, '__weakref__': <attribute '__weakref__' of 'A' objects>, '__doc__': None})
انظر أيضًا
- القواميس في بايثون.
- types.MappingProxyType.
- الدالة
locals()
: تحدث قاموسًا يُمثّل جدول الرموز المحليّ وتُعيده.