class Test(object):
def __init__(self):
self.__num = 100
def setNum(self, newNum):
print("----setter----")
self.__num = newNum
def getNum(self):
print("----getter----")
return self.__num
num = property(getNum, setNum)
t = Test()
#print(t.__num)
#t.__num = 200
#print(t.getNum())
#t.setNum(50)
#print(t.getNum())
print("-"*50)
t.num = 200 #相當於調用了 t.setNum(200)
print(t.num) #相當於調用了 t.getNum()
#注意點:
#t.num 到底是調用getNum()還是setNum(),要根據實際的場景來判斷,
#1. 如果是給t.num賦值 那麼一定調用setNum()
#2. 如果是獲取t.num的值,那麼就一定調用getNum()
#
#property的作用:相當於把方法進行了封裝, 開發者在對屬性設置數據的時候更方便
Python: property
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.