Python @property裝飾器原理解析
這篇文章主要介紹了Python @property裝飾器原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
1.通過(guò)@property裝飾器,可以直接通過(guò)方法名來(lái)訪問(wèn)方法,不需要在方法名后添加一對(duì)“()”小括號(hào)。
class Person:
def __init__(self, name):
self.__name = name
@property
def say(self):
return self.__name
xioabai = Person("xiaobai")
#直接通過(guò)方法名來(lái)訪問(wèn)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裝飾器來(lái)刪除指定屬性,可以為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
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(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)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
如何用C代碼給Python寫(xiě)擴(kuò)展庫(kù)(Cython)
這篇文章主要介紹了如何用C代碼給Python寫(xiě)擴(kuò)展庫(kù)(Cython),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05
Python實(shí)現(xiàn)去除列表中重復(fù)元素的方法總結(jié)【7種方法】
今天小編就為大家分享一篇關(guān)于Python實(shí)現(xiàn)去除列表中重復(fù)元素的方法總結(jié)【7種方法】,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02
Python?Transformers庫(kù)(NLP處理庫(kù))案例代碼講解
本文介紹transformers 庫(kù)的全面講解,包含基礎(chǔ)知識(shí)、高級(jí)用法、案例代碼及學(xué)習(xí)路徑,內(nèi)容經(jīng)過(guò)組織,適合不同階段的學(xué)習(xí)者,對(duì)Python?Transformers庫(kù)相關(guān)知識(shí)感興趣的朋友一起看看吧2025-04-04
python中dropna()函數(shù)的作用舉例說(shuō)明
這篇文章主要給大家介紹了關(guān)于python中dropna()函數(shù)的相關(guān)資料,dropna()是pandas庫(kù)中的一個(gè)函數(shù),用于刪除DataFrame中的缺失值,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11
Python中使用gzip模塊壓縮文件的簡(jiǎn)單教程
這篇文章主要介紹了Python中使用gzip模塊壓縮文件的簡(jiǎn)單教程,本文的例子主要針對(duì)類UNIXZ系統(tǒng),需要的朋友可以參考下2015-04-04

