Home  >  Article  >  Backend Development  >  How to use the getattr() function in Python to obtain the attribute value of an object

How to use the getattr() function in Python to obtain the attribute value of an object

王林
王林Original
2023-08-22 15:00:141127browse

How to use the getattr() function in Python to obtain the attribute value of an object

How to use the getattr() function in Python to obtain the attribute value of an object

In Python programming, we often encounter situations where we need to obtain the attribute value of an object. Python provides a built-in function getattr() to help us achieve this goal. getattr() The function allows us to get the attribute value of the object by passing the object and attribute name as parameters. This article will introduce the usage of the getattr() function in detail and provide actual code examples for better understanding.

getattr()The syntax of the function is as follows:

getattr(object, name[, default])

Among them, object is the object to obtain the attribute value, name is the name of the attribute. The optional default parameter indicates the default value returned when the attribute does not exist. The default is None.

Then let’s look at a few examples to demonstrate the usage of the getattr() function. First, we define a simple class Person:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

Next, we instantiate a Person object and define name## for it #And ageTwo attributes:

person = Person("Alice", 25)

Now, we can use the

getattr() function to get the attribute value of the object. For example, we can get the name attribute value of the person object:

name = getattr(person, "name")
print(name)  # 输出:Alice

Similarly, we can also get the

of the person object ageAttribute value:

age = getattr(person, "age")
print(age)  # 输出:25

We can also use the

getattr() function to get attributes that do not exist in the object. By default, the getattr() function returns None. For example, we try to get the gender attribute of the person object:

gender = getattr(person, "gender")
print(gender)  # 输出:None

If we want to customize the default value when the attribute does not exist, we can use

getattr ()The third parameter of the functiondefault. For example, we define a gender attribute with a default value of "Unknown", and then try to get its value:

gender = getattr(person, "gender", "Unknown")
print(gender)  # 输出:Unknown

In addition to getting it through the attribute name string In addition to the attribute value of the object, the

getattr() function can also accept a callable object as the attribute name. This callable object will find the attribute name in the object. For example, we define a function get_age() to obtain the age attribute value of the person object:

def get_age(obj):
    return obj.age

age = getattr(person, get_age)
print(age)  # 输出:25

It should be noted that when When using a callable object as a property name, the callable object still needs to return the correct property value.

To sum up, the

getattr() function is a very useful function, which can help us get the attribute value of an object in programming. We can use the getattr() function by passing the object and property name, and can also set default values ​​and use callable objects as property names. I hope the sample code in this article can help you better understand the usage of the getattr() function.

The above is the detailed content of How to use the getattr() function in Python to obtain the attribute value of an object. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn