Python hasattr() Function – Tutorial with Examples

The hasattr() function in Python is a built-in function that returns a boolean value indicating whether an object has a particular attribute or not. It takes two arguments: the object and the name of the attribute to check for. If the object has the specified attribute, the function returns True, otherwise it returns False.

Syntax

hasattr(object, name)

Parameters

object – the object to check for the attribute

name – the name of the attribute to check for

Return Value

The hasattr() function returns a boolean value indicating whether the object has the specified attribute or not.

Examples

Example 1: Checking for an Attribute in an Object

class MyClass:
    def __init__(self, x):
        self.x = x
obj = MyClass(10)
print(hasattr(obj, "x"))
print(hasattr(obj, "y"))

Output:

True
False

In this example, the hasattr() function is used to check if an object has a specific attribute. The first call to hasattr() returns True because the object has an attribute named x, while the second call returns False because the object does not have an attribute named y.

Example 2: Checking for an Attribute in a Built-in Type

x = [1, 2, 3, 4, 5]
print(hasattr(x, "append"))
print(hasattr(x, "remove"))

Output:

True
False

In this example, the hasattr() function is used to check if a list object has two different attributes. The first call to hasattr() returns True because the list object has a method named append(), while the second call returns False because the list object does not have a method named remove().

Example 3: Checking for an Attribute in a Module

import math
print(hasattr(math, "sin"))
print(hasattr(math, "cos"))
print(hasattr(math, "tan"))

Output:

True
True
True

In this example, the hasattr() function is used to check if the math module has three different attributes. All three calls to hasattr() return True because the math module has the sin(), cos(), and tan() functions as attributes.

Use Cases

The hasattr() function is often used in a variety of situations where you want to check if an object has a particular attribute before attempting to access it. This can be useful for avoiding exceptions when working with objects that might not have the expected attributes. Some common use cases for hasattr() include:

  • Checking if an object has a specific method before calling it
  • Checking if an object has a specific attribute before accessing it
  • Checking if a module has a specific function before importing it

In all these cases, the hasattr() function allows you to write more robust code by avoiding exceptions and making it easier to handle unexpected conditions.

In conclusion, the hasattr() function is a useful built-in function in Python that allows you to check if an object has a particular attribute or not. By using hasattr(), you can write more robust code that is able to handle unexpected conditions and avoid exceptions.

Leave a Reply

Your email address will not be published. Required fields are marked *