Python delattr() Function
The delattr() function in Python is used when we need to delete an attribute from a specified object. For example:
class CodesCracker: ID = 1249 Name = "Kenneth" Designation = "Java Content Manager" Country = "Canada" delattr(CodesCracker, "Designation")
Using the following statement in above program:
delattr(CodesCracker, "Designation")
The attribute named Designation will no longer be available for the class CodesCracker, because it gets deleted using the delattr() function.
Python delattr() Function Syntax
The syntax of delattr() function in Python is:
delattr(object, attribute)
The object refers to the object from where the specified attribute has to be delete. The attribute must be enclosed within single or double quote.
Note: Both parameters are required.
Python delattr() Function Example
Here is the modified version of the program that was given at start of this article. With this program, before using the delattr() function to delete a particular attribute from the object, I've printed the value of that attribute:
class CodesCracker: ID = 1249 Name = "Kenneth" Designation = "Java Content Manager" Country = "Canada" ob = CodesCracker() print("Designation =", ob.Designation) delattr(CodesCracker, "Designation")
The output would be:
Designation = Java Content Manager
But if you will try to execute the same statement, that is:
print("Designation =", ob.Designation)
after deleting the attribute Designation. Then here is the error, you'll see:
The exception raised is AttributeError, therefore if you're trying to delete an attribute using the delattr() function, that doesn't exist in specified object. Then in that case too, this exception will get raised. Therefore be sure to handle this exception. Let's create a program to handle this exception while deleting and printing any attribute of the class CodesCracker:
class CodesCracker: ID = 1249 Name = "Kenneth" Designation = "Java Content Manager" Country = "Canada" ob = CodesCracker() try: print("\nDesignation =", ob.Designation) except AttributeError: print("\nThis attribute is not available.") try: delattr(CodesCracker, "Designation") except AttributeError: print("\nThe specified attribute does not exist in the specified object.") try: print("\nDesignation =", ob.Designation) except AttributeError: print("\nThis attribute is not available.")
The sample output is shown in the snapshot given below:
« Previous Function Next Function »
Liked this post? Share it!