الفرق بين المراجعتين لصفحة: «Python/setattr»

من موسوعة حسوب
إضافة الصّفحة
 
لا ملخص تعديل
 
سطر 39: سطر 39:


== انظر أيضًا ==
== انظر أيضًا ==
* [[Python/delattr|الدالة delattr()‎ في بايثون]].
* الدالة <code>[[Python/delattr|delattr()‎]]</code>: تحذف الخاصيّة المُعطاة من الكائن (إن سمَح الكائن بحذف الخاصيّة).
* [[Python/getattr|الدالة getattr()‎ في بايثون]].
* الدالة <code>[[Python/getattr|getattr()‎]]</code>: تعيد قيمة الخاصيّة المُعطاة من الكائن المُعطى.


== مصادر ==
== مصادر ==

المراجعة الحالية بتاريخ 13:17، 10 يونيو 2018

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

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

setattr(object, name, value)

المعاملات

object

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

name

سلسلة نصيّة تُمثّل اسم الخاصيّة، يُمكن أن تكون الخاصيّة موجودة مُسبقًا (ستُغيّر قيمتها) أو غير موجودة (ما يعني أنّها ستُنشأ).

value

القيمة المرغوب إسنادها للخاصيّة.

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

القيمة None.

ملاحظات

  • يجب على الكائن أن يسمح بتعديل خاصيّاته.
  • الاستدعاء ‎setattr‎(‎x,‎ ‎'foobar'‎, 123‎)‎ مُكافئ للجملة ‎x.‎‎foobar‎ ‎=‎‎ 123‎.

أمثلة

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

>>> class A:
...     pass
... 
>>> A.x # الخاصيّة غير موجودة
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: type object 'A' has no attribute 'x'
>>> setattr(A, 'x', 1) # إضافة الخاصيّة إلى الصّنف
>>> A.x
1

انظر أيضًا

  • الدالة delattr()‎: تحذف الخاصيّة المُعطاة من الكائن (إن سمَح الكائن بحذف الخاصيّة).
  • الدالة getattr()‎: تعيد قيمة الخاصيّة المُعطاة من الكائن المُعطى.

مصادر