Python之內置裝飾器property

2022-04-03 17:50:31 字數 914 閱讀 9888

#

-*- coding: utf-8 -*-

#author:baoshan

class

student(object):

def__init__

(self, name):

self.name =name

@property

defage(self):

return

self._age

@age.setter

defage(self, value):

ifnot

isinstance(value, int):

raise valueerror("

輸入不合法:年齡必須為數值!")

ifnot 0 < value < 100:

raise valueerror("

輸入不合法,年齡範圍必須為0-100")

self._age =value

@age.deleter

defage(self):

delself._age

xiaoming = student('小明'

)xiaoming.age = 25

print

(xiaoming.age)

delxiaoming.age

#用@property裝飾過的函式,會將乙個函式定義成乙個屬性,屬性的值就是該函式return的內容。

#同時,會將這個函式變成另外乙個裝飾器。就像後面我們使用的@age.setter和@age.deleter。

#@age.setter 使得我們可以使用xiaoming.age = 25這樣的方式直接賦值。

#@age.deleter 使得我們可以使用del xiaoming.age這樣的方式來刪除屬性。

謝謝!謝謝!

Python筆記 內建裝飾器

內建裝飾器是指python中自己帶的,不要程式設計師寫的 如下 class student object def init self,name,score self.name name self.score score if name main s student it1995 99 print s...

python之內置函式

非空即真,非0即真 記住這句話可以讓你少寫好多 l asdfgwert3r 1 sorted l 排序 字串可以直接使用sorted排序 2 all 如果list裡面都為真的情況返回為 true all 1 2,3 4 print true all 1 2,3 0 print false all 1...

python之內置函式

它將兩個 非複數 數字作為實參,並在執行整數除法時返回一對商和餘數。對於混合運算元型別,適用雙目算術運算子的規則。對於整數,結果和 a b,a b 一致,分別對應取整數和取餘數 對於浮點數,結果是 q,a b q 通常是 math.floor a b 但可能會比 1 小。如 將153拆解 a,b d...