欢迎访问宙启技术站
智能推送

在Python中使用“getattr()”函数获取对象的属性

发布时间:2023-06-05 01:42:06

Python中,我们可以使用内置函数“getattr()”来获取对象的属性。这个函数接收两个参数,一个是对象本身,另一个是对象的属性名。

例如,如果我们有一个类:

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

我们可以创建一个实例对象:

person1 = Person("John", 30)

现在,如果我们想要获取这个对象的“name”属性,可以使用“getattr()”函数:

name = getattr(person1, "name")
print(name)   # 输出“John”

这里,我们首先在“person1”对象上调用“getattr()”函数,并传入“name”作为第二个参数,以获取该对象的“name”属性。在这个例子中,函数返回“John”,将其存储在“name”变量中,并将其打印出来。

如果试图获取一个对象上不存在的属性,那么Python会抛出一个属性错误。但是在使用“getattr()”函数时,我们可以提供一个默认值作为第三个参数,以避免这种情况:

city = getattr(person1, "city", "unknown")
print(city)     # 输出“unknown”

这里,我们试图获取“person1”对象的“city”属性,但是该对象上并没有这个属性。因此,默认值“unknown”被返回并打印出来。

在Python中,“getattr()”函数是一种非常强大和灵活的工具,可以用于访问对象的属性,并根据需要提供默认值。它适用于许多不同的应用场景,是Python编程的核心功能之一。