菜鸟IT的博客 >> Python
getattr函数分3个参数 | 第1个参数是“对象名称”。也就是类的实例化名称 | 第3个参数可以不填,如果填就是你在代码里假定的默认函数方法名称 | getattr(ps1,'sayCN')() | getattr(ps1,'sayXX',ps1.sing)()
class Person:
name="张三"
def sayCN(self):
print("中文")
# 加1个默认函数,假定它是默认的
def sing(self):
print("唱歌")
ps1=Person()
# 接下来这个getattr函数分3个参数,
# 第1个参数是“对象名称”。也就是类的实例化名称,
# 第2个参数是函数方法名称
# 第3个参数可以不填,如果填就是你在代码里假定的默认函数方法名称
#【1】我先只放2个参数,并且第2个参数是类里存在的方法函数名称↓
getattr(ps1,'sayCN')()
#【2】我先只放2个参数,并且第2个参数是错误的方法函数名称↓这样会程序报错。
# getattr(ps1,'sayXX')()
# 【3】我放3个参数,并且第2个参数是错误的方法函数名称,然后第3个参数是存在的假定的默认函数方法名称。
# 第三个参数注意格式:对象名称(类实例化名称) + 点 + 方法名称
getattr(ps1,'sayXX',ps1.sing)()
——————————
以上全部代码输出结果:
中文
唱歌
进程已结束,退出代码0
菜鸟IT博客[2021.12.19-17:39] 访问:330