Python 之動態添加屬性以及方法
阿新 • • 發佈:2019-05-11
eth cls pri col ssm __main__ sta 類方法 方法
import types class Person(object): def __init__(self, newName, newAge): self.name = newName self.age = newAge def run(self): print("%s is running..." % self.name) # 靜態方法 @staticmethod def test(): print("static method...") # 類方法 @classmethod def eat(cls):print("class method...") if __name__ == "__main__": p = Person(‘yy‘, 18) # 給person類添加一個屬性 p.id = 12; # 給person類添加一個方法 p.run = run p.run(p) # 方式二 p.run = types.MethodType(run, p) p.run() # 給person類添加一個靜態方法 Person.test = test Person.test()# 給person類添加一個類方法 Person.eat = eat Person.eat() print(dir(p))
Python 之動態添加屬性以及方法