getattr()函数获取Python对象的属性值

分类:知识百科 日期: 点击:0

getattr()函数

getattr()函数是Python中一个内置函数,它可以获取Python对象的属性值,它的语法格式如下:

getattr(object, name[, default])

其中,object表示要获取属性值的对象,name表示要获取的属性名,default表示如果没有找到该属性,则返回默认值,如果没有提供默认值,则会抛出AttributeError异常。

下面我们来看一个使用getattr()函数获取对象属性值的示例:

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

person = Person('John', 20)
name = getattr(person, 'name')
print(name)

在上面的代码中,我们定义了一个Person类,创建了一个Person实例person,使用getattr()函数获取person实例的name属性值,打印出来,输出结果为:

John

从上面的示例可以看出,使用getattr()函数可以很方便地获取Python对象的属性值。

使用场景

getattr()函数可以用来检查对象是否具有某个属性,如果有,则返回该属性的值,如果没有,则返回默认值,比如:

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

person = Person('John', 20)
height = getattr(person, 'height', 180)
print(height)

在上面的代码中,person实例没有height属性,但是我们使用getattr()函数获取height属性的值,并提供了默认值180,打印出来,输出结果为:

180

getattr()函数还可以用来动态调用对象的方法,比如:

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

    def get_name(self):
        return self.name

person = Person('John', 20)
method = getattr(person, 'get_name')
name = method()
print(name)

在上面的代码中,我们使用getattr()函数获取person实例的get_name方法,调用该方法,打印出来,输出结果为:

John

从上面的示例可以看出,使用getattr()函数可以实现动态调用对象的方法。

getattr()函数是Python中一个内置函数,它可以获取Python对象的属性值。使用getattr()函数可以检查对象是否具有某个属性,如果有,则返回该属性的值,如果没有,则返回默认值,同时还可以用来动态调用对象的方法。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。