反射相关

"""
反射

"""


class A():
    def func(self):
        """
        实例函数
        """
        return "func"
    @classmethod
    def func2(cls):
        """
        类函数
        """
        return "func2"


"""
在使用 getattr 反射的时候 需要注意是否是实例函数  
"""

# 如果是实例函数 那么在getattr的时候需要实例化 如果不实例化 则报错
a=getattr(A(),"func")
print(a())
# aa=getattr(A,"func")
# print(aa())

# 如果是类函数 则可以不用实例化
b=getattr(A,"func2")
print(b())
bb=getattr(A(),"func2")
print(bb())

  

posted @ 2020-12-08 11:08  Yuan_x  阅读(66)  评论(0编辑  收藏  举报