Python @property裝飾器原理解析
這篇文章主要介紹了Python @property裝飾器原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
1.通過@property裝飾器,可以直接通過方法名來訪問方法,不需要在方法名后添加一對“()”小括號(hào)。
class Person:
def __init__(self, name):
self.__name = name
@property
def say(self):
return self.__name
xioabai = Person("xiaobai")
#直接通過方法名來訪問say方法
print("我的名字是:", xiaobai.say)
我的名字是: xiaobai
上面程序中,使用@property修飾了say()方法,這就使得該方法變成了name屬性的getter方法。
2.使用setter裝飾器,可以為say方法添加setter方法。
class Person:
def __init__(self, name):
self.__name = name
@property
def say(self):
return self.__name
@say.setter
def say(self, value):
self.__name = value
xiaobai = Person("xiaobai")
xiaobai.say = "xiaohei"
print("我的名字其實(shí)是:", xiaobai.say)
我的名字其實(shí)是: xiaohei
3.使用deleter裝飾器來刪除指定屬性,可以為say方法添加deleter方法
class Person:
def __init__(self, name):
self.__name = name
@property
def say(self):
return self.__name
@say.setter
def say(self, value):
self.__name = value
@say.deleter
def say(self):
self.__name = "xxx"
xiaobai = Person("xiaobai")
del xiaobai.say
print("我的名字其實(shí)是:", xiaobai.say)
我的名字其實(shí)是: xxx
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python @property的用法及含義全面解析
- 介紹Python的@property裝飾器的用法
- 實(shí)例講解Python編程中@property裝飾器的用法
- python 中的@property的用法詳解
- Python 中@property的用法詳解
- 詳解Python裝飾器之@property
- Python進(jìn)階之@property動(dòng)態(tài)屬性的實(shí)現(xiàn)
- python裝飾器中@property屬性的使用解析
- Python @property原理解析和用法實(shí)例
- Python如何使用@property @x.setter及@x.deleter
- Python @property使用方法解析
- python中@Property屬性使用方法
- python中@property注解的具體使用
相關(guān)文章
Django項(xiàng)目實(shí)戰(zhàn)之配置文件詳解
這篇文章主要給大家介紹了關(guān)于Django項(xiàng)目實(shí)戰(zhàn)之配置文件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
如何用C代碼給Python寫擴(kuò)展庫(Cython)
這篇文章主要介紹了如何用C代碼給Python寫擴(kuò)展庫(Cython),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-05-05
Python實(shí)現(xiàn)去除列表中重復(fù)元素的方法總結(jié)【7種方法】
今天小編就為大家分享一篇關(guān)于Python實(shí)現(xiàn)去除列表中重復(fù)元素的方法總結(jié)【7種方法】,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-02-02
Python?Transformers庫(NLP處理庫)案例代碼講解
本文介紹transformers 庫的全面講解,包含基礎(chǔ)知識(shí)、高級用法、案例代碼及學(xué)習(xí)路徑,內(nèi)容經(jīng)過組織,適合不同階段的學(xué)習(xí)者,對Python?Transformers庫相關(guān)知識(shí)感興趣的朋友一起看看吧2025-04-04

