इन दो कार्यों का उपयोग कक्षाओं से विशेषताओं को हटाने के लिए किया जाता है। डेलैट्र () विशेषता को डायनेमोक हटाने की अनुमति देता है जबकि डेल () विशेषता को हटाने में अधिक कुशल स्पष्ट है।
delattr () का उपयोग करना
Syntax: delattr(object_name, attribute_name) Where object name is the name of the object, instantiated form the class. Attribute_name is the name of the attribute to be deleted.
उदाहरण
नीचे के उदाहरण में हम custclass नामक एक वर्ग पर विचार करते हैं। इसकी विशेषताओं के रूप में ग्राहकों की आईडी है। इसके बाद हम क्लास को ग्राहक नाम की वस्तु के रूप में इंस्टेंट करते हैं और इसके गुणों को प्रिंट करते हैं।
class custclass: custid1 = 0 custid2 = 1 custid3 = 2 customer=custclass() print(customer.custid1) print(customer.custid2) print(customer.custid3)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
0 1 2
उदाहरण
अगले चरण में हम फिर से delattr () फ़ंक्शन को लागू करके प्रोग्राम चलाते हैं। इस बार जब हम id3 को प्रिंट करना चाहते हैं, तो हमें एक त्रुटि मिलती है क्योंकि एट्रीब्यूट को क्लास से हटा दिया जाता है।
class custclass: custid1 = 0 custid2 = 1 custid3 = 2 customer=custclass() print(customer.custid1) print(customer.custid2) delattr(custclass,'custid3') print(customer.custid3)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
0 Traceback (most recent call last): 1 File "xxx.py", line 13, in print(customer.custid3) AttributeError: 'custclass' object has no attribute 'custid3'
डेल का उपयोग करना ()
Syntax: del(object_name.attribute_name) Where object name is the name of the object, instantiated form the class. Attribute_name is the name of the attribute to be deleted.
उदाहरण
हम उपरोक्त उदाहरण को डेल () फ़ंक्शन के साथ दोहराते हैं। कृपया ध्यान दें कि सिंटैक्स में delattr()
. से अंतर हैclass custclass: custid1 = 0 custid2 = 1 custid3 = 2 customer=custclass() print(customer.custid1) print(customer.custid2) del(custclass.custid3) print(customer.custid3)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
0 1 Traceback (most recent call last): File "xxx.py", line 13, in print(customer.custid3) AttributeError: 'custclass' object has no attribute 'custid3'