动态给实例添加属性和方法
生活随笔
收集整理的這篇文章主要介紹了
动态给实例添加属性和方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
from types import MethodType#創建一個空類
class Person(object):__slots__ = ("name","age","speak","height")per = Person()
#動態添加屬性,這體現了動態語言的特點(靈活)per.name = "tom"
print(per.name)
'''
#動態添加方法
def say(self):print("my name is "+self.name)
per.speak = say
per.speak()
'''def say(self):print("my name is "+self.name)
per.speak = MethodType(say,per)
per.speak()#思考:如果我們想要限制實力的屬性怎么辦
#比如:只允許給對象添加 name,age,height,weight屬性#解決:定義類的時候,定義一個特殊的屬性(__slots__)
#可以限制動態添加的屬性
per.height = 100
print(per.height)
?
總結
以上是生活随笔為你收集整理的动态给实例添加属性和方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jQuery之滚动事件$(window)
- 下一篇: android9最新系统,【5/31更新