python中getattr函数的用法是怎样的
Admin 2022-08-15 群英技术资讯 1165 次浏览
这篇文章给大家介绍了“python中getattr函数的用法是怎样的”的相关知识,讲解详细,步骤过程清晰,有一定的借鉴学习价值,因此分享给大家做个参考,感兴趣的朋友接下来一起跟随小编看看吧。getattr是python里的一个内建函数
getattr()这个方法最主要的作用是实现反射机制。也就是说可以通过字符串获取方法实例。这样,你就可以把一个类可能要调用的方法放在配置文件里,在需要的时候动态加载。
python里面跟getattr相关的有hasattr,setattr,delattr ,那么我们通过下面的例子,来详细的说说他们的用法。
1 class Xiaorui: 2 def __init__(self): 3 self.name = 'xiaorui' 4 5 def setName(self, name): 6 self.name = name 7 8 def getName(self): 9 return self.name 10 11 def greet(self): 12 print "Hello, i'm %s" % self.name 13 14 foo = Xiaorui() 15
16print hasattr(foo, 'setName')
一. hasattr(object,name)
判断object中是否具有name属性,例如:
print print hasattr(foo, 'setName') #判断setName是否存在,存在则返回True。
True
二. getattr(object,name,default)
如果存在name属性(方法)则返回name的值(方法地址)否则返回default值。
print getattr(foo, 'name', 'NA') #存在name属性,所以返回其value
xiaorui
print getattr(foo, 'age', 'NA')
NA
三. setattr(object,name,default)
setattr(foo,’age’,’18’) #字符串可能会列出一个现有的属性(或一个新的属性)。这个函数将值赋给属性的
setattr(foo, 'age', '18') print getattr(foo, 'age', 'NA') 18
四. delattr(object,’name’)
delattr(foo,’name’)#删除属性name,原值为‘xiaorui’
delattr(foo, 'name') print getattr(foo, 'name', 'not find')
not find
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
之前向大家介绍过Python中float() 函数的实现过程。在使用float() 函数时,我们用的字符是浮点数,但是有时我们并不需要浮点数,这时我们就要将float转化为其他形式。本文将介绍Python float 转换为 String的两种方法:使用'%d'%num实现和使用str()方法实现。
这篇文章主要介绍了Python 实现绘制子图及子图刻度的变换等问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
这篇文章主要介绍了利用Python读取CSV文件并计算某一列的均值和方差,这里利用了csv模块来对文件进行处理,文章通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
在处理数据的时候,很多时候会遇到替换的情况,下面这篇文章主要给大家介绍了关于Python pandas替换指定数据的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
PyTorch出现平方根报错是什么原因?一些朋友遇到在使用PyTorch进行平方根计算时,出现平方根报错的情况,那么这时我们应该怎样解决呢?接下来小编就和大家一样探讨看看。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008