物件property裝飾器

2021-10-04 21:26:08 字數 792 閱讀 1790

class

people

:def

__init__

(self, name)

: self.__name = name

@property

defname

(self)

:# obj1.name

return self.__name

@name.setter

defname

(self, val)

:# obj1.name='egon'

iftype

(val)

isnot

str:

print

('必須傳入str型別'

)return

self.__name = val

@name.deleter

defname

(self)

:# del obj1.name

print

('不讓刪除'

)# del self.__name

obj1=people(

'egon'

)# 人正常的思維邏輯

print

(obj1.name)

## obj1.name=18

# del obj1.name

property物件裝飾器可以讓呼叫函式看起更像呼叫資料,但是據我所了解現在只有兩種用法乙個是更新乙個是刪除。

而且更新時只能新增乙個引數而刪除時不能新增引數,且都沒有返回值

物件導向 屬性 裝飾器函式 property

屬性的初識屬性 裝飾器函式,內建函式,幫助你將類種的方法偽裝成屬性,特性。上沒有什麼提公升,只是更合理.property 呼叫方法的時候不需要主動加括號,讓程式的邏輯性更合理.屬性名.setter 裝飾器,修改被property裝飾的屬性的時候會呼叫被這個裝飾器裝飾的方法,除了self之外還有乙個引...

內建裝飾器 property

使用 property 閱讀 4164 內建裝飾器 property的基本功能就是把類中的方法當作屬性來訪問 在繫結屬性時,如果我們直接把屬性暴露出去,雖然寫起來很簡單,但是,沒辦法檢查引數,導致可以把成績隨便改 s student s.score 9999這顯然不合邏輯。為了限制score的範圍,...

property裝飾器詳解

property裝飾器,看了好幾個教程都不太理解,知道發現了知乎的這篇好文python property的介紹與使用,終於懂了!下面結合github上的乙個例子,解釋一下這個裝飾器 class person object def init self,name,age 初始化 self.name na...