python 内置函数

python getattr()函数用于获取对象的属性名或方法地址。它是python的内置函数,是python反射方法之一。

语法

语法如下:
getattr(object,name,default)

参数

  • object:指定检查的对象。
  • name:指定获取对象的属性名或方法地址。
  • default:获取不到时候的默认值。

返回值

返回对象的属性名或方法地址,

如果不存在则返回默认值default。

程序示例

介绍一个例子,了解python getattr()函数的使用方法。

#!/usr/bin/python
# coding=utf-8

class Person:
    name = None
    age = None

    def say(self):
        print('hello')


p = Person()
print('属性名:', getattr(p, 'name', 'yxjc123'))
print('属性名:', getattr(p, 'age', 'yxjc123'))
print('方法名:', getattr(p, 'say', 'yxjc123'))
print('方法名:', getattr(p, 'test','yxjc123')) #test获取不到,yxjc123为默认值 

程序运行结果:

属性名: None
属性名: None
方法名: <bound method Person.say of <__main__.Person object at 0x7f931b736710>>
方法名: yxjc123

上面的运行结果中,test不存在,使用yxjc123替代。