Python之hasattr()getattr()和setattr()

Posted xiaobai-0713

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python之hasattr()getattr()和setattr()相关的知识,希望对你有一定的参考价值。

1、hasattr(object,attr)    判断一个对象里是否有某个属性或方法,返回布尔值,有为True,否则False

class test():

      name = "xiaoxiao"

      def say(self):

             return "HelloWord"

 

t = test()

 has_name = hasattr(t, ‘name‘)

print(‘是否有name属性:‘, has_name)

运行结果:

运行结果:

是否有name属性: True

 

2、getattr(object,attr[,default])   # 获取对象的属性或方法,可设置输出默认值, 如果获取方法,返回的是内存地址,如果需要运行,后面添加一对括号

has_name = getattr(t,‘name‘)

print("name的属性":has_name)

运行结果:name的属性: xiaoxiao

 

3、setattr(object,attr,values)    # 给对象的属性赋值,若属性不存在,则先创建再赋值

p = setattr(t,sex,‘女‘)

print(“sex的属性:”,t.p)

运行结果:sex的属性:女

 

以上是关于Python之hasattr()getattr()和setattr()的主要内容,如果未能解决你的问题,请参考以下文章

python之ftp与paramiko与hasattr与getattr

Python之hasattr,getattr与setattr的使用

python中的hasattr()getattr()setattr()

python反射hasattr getattr setattr delattr

Python:hasattr() getattr() setattr() 函数

python 反射 hasattr getattr