الفرق بين المراجعتين ل"Python/vars"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(إضافة الصّفحة)
 
سطر 2: سطر 2:
 
تعيد الدّالة <code>vars()‎</code> قيمة الخاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة بوحدة، أو صنف، أو نُسخة، أو أيّ كائن يمتلك خاصيّةً باسم <code>‎_‎_‎dict‎_‎_‎</code>.
 
تعيد الدّالة <code>vars()‎</code> قيمة الخاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة بوحدة، أو صنف، أو نُسخة، أو أيّ كائن يمتلك خاصيّةً باسم <code>‎_‎_‎dict‎_‎_‎</code>.
  
تملك الكائنات مثل الوحدات والنّسخ خاصيّة <code>‎_‎_‎dict‎_‎_‎</code> يُمكن تحديثها، لكنّ كائنات أخرى قد تفرض قيودًا على خاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة بها (فمثلا، يُمكن للأصناف استعمال النّوع <code>‎‎types‎.‎MappingProxyType‎</code> لمنع تحديث القاموس مُباشرةً).
+
تملك الكائنات مثل الوحدات والنّسخ خاصيّة <code>‎_‎_‎dict‎_‎_‎</code> يُمكن تحديثها، لكنّ كائنات أخرى قد تفرض قيودًا على خاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة بها (فمثلا، يُمكن للأصناف استعمال النّوع <code>[[Python/types/MappingProxyType|‎‎types‎.‎MappingProxyType‎]]</code> لمنع تحديث القاموس مُباشرةً).
  
 
== البنية العامة ==
 
== البنية العامة ==
سطر 12: سطر 12:
 
=== <code>object</code> ===
 
=== <code>object</code> ===
 
مُعامل اختياريّ يُمثّل الكائن المرغوب الحصول على قيمة الخاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة به.
 
مُعامل اختياريّ يُمثّل الكائن المرغوب الحصول على قيمة الخاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة به.
 
 
 
== القيمة المعادة ==
 
== القيمة المعادة ==
قيمة الخاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة بالكائن، وتُمثّل قيمته قاومسًا يحتوي على خاصيّات الكائن القابلة للكتابة.
+
قيمة الخاصيّة <code>‎_‎_‎dict‎_‎_‎</code> الخاصّة بالكائن، وتُمثّل قيمته قاموسًا يحتوي على خاصيّات الكائن القابلة للكتابة (أي تلك التي تقبل إسناد قيمة لها).
  
إن لم تُمرّر للدّالة أيّة مُعاملات، فاستدعاؤها مُشابه لاستدعاء الدّالة <code>locals()‎</code>. لكن لاحظ أنّ قاموس المتغيّرات المحليّة <code>locals()‎</code> مُفيد للقراءة فقط لأنّ مُحاولات تحديثه تُتَجاهَل.
+
إن لم تُمرّر للدّالة أيّة مُعاملات، فاستدعاؤها مُشابه لاستدعاء الدّالة <code>[[Python/locals|locals()‎]]</code>. لكن لاحظ أنّ قاموس المتغيّرات المحليّة <code>locals()‎</code> مُفيد للقراءة فقط لأنّ مُحاولات تحديثه تُتَجاهَل.
  
 
== أمثلة ==
 
== أمثلة ==
سطر 32: سطر 30:
  
 
== انظر أيضًا ==
 
== انظر أيضًا ==
* [[Python/locals|الدالة locals()‎ في بايثون]]
+
* [[Python/locals|الدالة locals()‎ في بايثون.]]
* [[Python/types/MappingProxyType|types.MappingProxyType]]
+
* [[Python/types/MappingProxyType|types.MappingProxyType]].
 
* [[Python/dict|القواميس في بايثون]].
 
* [[Python/dict|القواميس في بايثون]].
  

مراجعة 18:00، 21 مايو 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})

انظر أيضًا

مصادر