الدالة getattr()‎ في بايثون

من موسوعة حسوب
مراجعة 12:12، 22 مايو 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - 'Python/class-definition' ب'Python/class_definition')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تعيد الدّالة getattr()‎ قيمة الخاصيّة المُعطاة من الكائن المُعطى.

البنية العامة

getattr(object, name[, default])

المعاملات

object

الكائن المراد الحصول على قيمة خاصيّته.

name

سلسلة نصيّة تُمثّل اسم الخاصيّة المرغوب الوصول إلى قيمتها.

default

مُعامل اختياريّ.

القيمة الافتراضيّة التي ستُعاد إن لم تكن الخاصيّة موجودة.

القيمة المعادة

قيمة الخاصيّة ذات الاسم الذي يوافق المُعامل name.

إن لم تكن الخاصيّة موجودة فستُعاد قيمة المُعامل default إن توفّر، أو سيُطلَق خطأ AttributeError إن لم تتوفّر قيمة للمُعامل.

أمثلة

المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:

>>> class Person:
...     name = 'Ali'
... 
>>> Person.name # الحصول على قيمة الخاصيّة مُباشرة
'Ali'
>>> getattr(Person, 'name') # الحصول على قيمة الخاصيّة باستخدام الدّالة
'Ali'

ملاحظات

كما تُلاحظ في المثال أعلاه، الاستدعاء ‎getattr‎(‎x‎,‎ ‎'‎foobar‎'‎)‎ مُكافئ للاستدعاء ‎x‎.‎foobar.

انظر أيضًا

مصادر