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

من موسوعة حسوب
إضافة الصّفحة
 
لا ملخص تعديل
 
(مراجعتان متوسطتان بواسطة مستخدم واحد آخر غير معروضتين)
سطر 15: سطر 15:


== القيمة المعادة ==
== القيمة المعادة ==
القيمة None كبقيّة الدّوال التي لا تُعيد أي قيمة صراحةً في بايثون.
القيمة <code>None</code> كبقيّة الدّوال التي لا تُعيد أي قيمة صراحةً في بايثون.


== أمثلة ==
== أمثلة ==
سطر 45: سطر 45:


== انظر أيضًا ==
== انظر أيضًا ==
* [[Python/setattr|Python/setattr]].
* الدالة <code>[[Python/setattr|setattr()‎]]</code>: إضافة خاصيّة جديدة للكائن.
* [[Python/str|السلاسل النصية في بايثون]].
* [[Python/str|السلاسل النصية في بايثون]].



المراجعة الحالية بتاريخ 12:50، 21 مايو 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'

انظر أيضًا

مصادر