Python根据字符串调用函数过程解析
1.使用getattr(object,name,default=None)获取属性
#-*-encoding=utf-8-*- classTest: def__init__(self): self.name='莉莉' self.age=18 if__name__=='__main__': test=Test() name=getattr(test,'name')#获取属性 print(name) age=getattr(test,'age')#获取属性 print(age) none=getattr(test,'none','none')#获取不存在的属性,需要添加default,否则抛异常 print(none)
运行
莉莉
18
none
2.使用getattr(object,name,default=None)获取方法
#-*-encoding=utf-8-*-
classTest:
def__init__(self):
self.name='莉莉'
self.age=18
defget_name(self):
print('年龄是:{}'.format(self.name))
returnself.name
if__name__=='__main__':
test=Test()
get_name=getattr(test,'get_name')#获取方法
print(get_name)
get_name()#调用方法
运行
年龄是:莉莉
3.使用__dict__获取属性
#-*-encoding=utf-8-*- classTest: def__init__(self): self.name='莉莉' self.age=18 if__name__=='__main__': test=Test() name=test.__dict__['name'] print(name)
运行
莉莉
ps:如果使用getattr()遇到类属性和方法名是相同时,默认取属性
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 财运虎年祝福语简短语
11 单亲爸爸春节祝福语简短
12 狗狗上厕所训练
13 植物种植祝福语简短
14 翻译考试祝福语朋友简短
15 个人周年庆简短祝福语
16 狗狗怎么训练
17 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短