الدالة delattr()
في بايثون
< Python
اذهب إلى التنقل
اذهب إلى البحث
مراجعة 15:03، 28 أبريل 2018 بواسطة عبد-الهادي-الديوري (نقاش | مساهمات)
تحذف الدّالة delattr()
الخاصيّة المُعطاة من الكائن (إن سمَح الكائن بحذف الخاصيّة).
البنية العامة
delattr(object, name)
المعاملات
object
الكائن المرغوب حذف خاصيّةٍ من خاصيّاته.
name
سلسلة نصيّة تُمثّل اسم الخاصيّة المرغوب حذفها.
القيمة المعادة
القيمة None
كبقيّة الدّوال التي لا تُعيد أي قيمة صراحةً في بايثون.
أمثلة
المثال التّالي يوضّح كيفيّة عمل هذه الدّالة، لاحظ أنّها مُشابهة للكلمة المفتاحيّة del
التي تحذف الكائنات:
>>> class A:
... def __init__(self, a=1, b=2):
... self.a = 1
... self.b = 2
...
>>> object = A() # إنشاء كائن من الصّنف
>>> object.a # يُمكننا الوصول إلى الخاصيّة دون أخطاء
1
>>> delattr(object, 'a') # لنحذف الخاصيّة
>>> object.a # خطأ، لأنّ الخاصيّة لم تعد موجودة
Traceback (most recent call last):
File "<input>", line 1, in <module>
object.a
AttributeError: 'A' object has no attribute 'a'
>>> object.b
2
>>> del object.b # يُمكن كذلك حذف الخاصيّات بهذه الطّريقة
>>> object.b
Traceback (most recent call last):
File "<input>", line 1, in <module>
object.b
AttributeError: 'A' object has no attribute 'b'
انظر أيضًا
- الدّالة setattr لإضافة خاصيّة جديدة للكائن.
- السلاسل النصية في بايثون.