الفرق بين المراجعتين لصفحة: «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/types/MappingProxyType|types.MappingProxyType]]
* [[Python/dict|القواميس في بايثون]].
* [[Python/dict|القواميس في بايثون]].
* [[Python/types/MappingProxyType|types.MappingProxyType]].
* الدالة <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})

انظر أيضًا

مصادر