property裝飾器,用來將乙個get方法,轉換為物件的屬性,新增為property裝飾器以後,我們就可以向呼叫屬性一樣使用get方法。往往和setter方法裝飾器一起使用。
class
person
:def
__init__
(self,name=
'',age=
20, ***=
'man'):
self.__name = name # 私有屬性
self.__age = age
self.__*** = ***
@property
# property裝飾器,用來將乙個get方法,轉換為物件的屬性,新增為property裝飾器以後,我們就可以向呼叫屬性一樣使用get方法
defname
(self)
:return self.__name
@name.setter # setter方法裝飾器:@屬性名.setter
defname
(self,name)
: self.__name = name
defsetname
(self,name):if
notisinstance
(name,
str)
:print
('name must be string'
)return
self.__name = name
@property
defage
(self)
:return self.__age
@age.setter
defage(self, age)
: self.__age = age
defsetage
(self,age):if
notisinstance
(age,
int)
:print
('age must be int'
)return
self.__age = age
@property
def***
(self)
:return self.__***
@***.setter
def***(self, ***)
: self.__*** = ***
defset***
(self,***)
:if *** !=
'man'
and *** !=
'woman'
:print
('*** must be "man" or "woman"'
)return
self.__*** = ***
defshow
(self)
:print
('name:'
,self.__name)
print
('age:'
,self.__age)
print
('***:'
,self.__***)
p = person(
'小明'
,'18'
,'man'
)p.show(
)
python中的 property使用
如下 class animal object def init self,name,age self.name name self.age age a animal zhuzhu 9 a.name out 3 zhuzhu a.age out 4 9 a.age 20 a.age out 5 20在...
python中 property裝飾器
python中有乙個被稱為屬性函式 property 的小概念,它可以做一些有用的事情。在這篇文章中,我們將看到如何能做以下幾點 property 考察 student 類 class student object def init self,name,score self.name name se...
python 中 property的使用
從14年下半年開始接觸到python,自學了一段時間,後又跟別人學習了下,把基礎知識基本上學過了。忽然感覺python不可能這麼簡單吧,就這麼點東西?後來看了下書,發現還有很多的高階部分。連續看了兩天,把裝飾符 看了下,記錄下。裝飾符的作用就是類裡的方法變成屬性使用,比直接呼叫方法要直接簡單 直接上...