delattr() حذف خاصية كائن

آخر تحديث: 2026-09-22

delattr() حذف خاصية كائن

تحذف delattr(obj, name) الخاصية name من obj؛ وهي مكافئة لـ del obj.name.

التصنيفالدوال المدمجة
النوعدالة مدمجة
إصدار بايثونall

📝 الصياغة

delattr(object, name)

⚙️ المعاملات

object مطلوبThe object to delete the attribute from.
name مطلوبThe attribute name as a string.

القيمة المُعادة:None.

💥 الاستثناءات

▶ مثال

عدّل الكود واضغط تشغيل لرؤية النتيجة في لوحة المخرجات:

المخرجات:

False
المزيد من الحالات قادم قريباً — تابعونا.

❓ أسئلة شائعة

Qما الفرق بين delattr(obj, 'x') و del obj.x؟
Aمكافئان تمامًا من الناحية الوظيفية. ميزة delattr أن اسم الخاصية يمكن أن يكون متغيرًا أو سلسلة ديناميكية، مناسبًا لسيناريوهات الحذف بالاسم.
Qماذا يحدث عند حذف خاصية غير موجودة؟
Aيُثار AttributeError، مثل del obj.nonexist تمامًا؛ استخدم hasattr() للفحص قبل الحذف.
Qهل يمكن لـ delattr حذف أسلوب؟
Aنعم، الأسلوب أيضًا خاصية صنف؛ بعد delattr(الصنف, 'method')، استدعاء ذلك الأسلوب على الكائن يُثير AttributeError.
Qما النوع الذي يجب أن تكون عليه وسيطة name؟
Aيجب أن تكون سلسلة نصية؛ تمرير نوع آخر (مثل رقم) يُثير TypeError.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%