全面了解Python的getattr(),setattr(),delattr(),hasattr()
1. getattr()函數(shù)是Python自省的核心函數(shù),具體使用大體如下:
class A: def __init__(self): self.name = 'zhangjing' #self.age='24' def method(self): print"method print" Instance = A() print getattr(Instance , 'name, 'not find') #如果Instance 對(duì)象中有屬性name則打印self.name的值,否則打印'not find' print getattr(Instance , 'age', 'not find') #如果Instance 對(duì)象中有屬性age則打印self.age的值,否則打印'not find' print getattr(a, 'method', 'default') #如果有方法method,否則打印其地址,否則打印default print getattr(a, 'method', 'default')() #如果有方法method,運(yùn)行函數(shù)并打印None否則打印default
2. hasattr(object, name)
說(shuō)明:判斷對(duì)象object是否包含名為name的特性(hasattr是通過(guò)調(diào)用getattr(ojbect, name)是否拋出異常來(lái)實(shí)現(xiàn)的)
3. setattr(object, name, value)
這是相對(duì)應(yīng)的getattr()。參數(shù)是一個(gè)對(duì)象,一個(gè)字符串和一個(gè)任意值。字符串可能會(huì)列出一個(gè)現(xiàn)有的屬性或一個(gè)新的屬性。這個(gè)函數(shù)將值賦給屬性的。該對(duì)象允許它提供。例如,setattr(x,“foobar”,123)相當(dāng)于x.foobar = 123。
4. delattr(object, name)
與setattr()相關(guān)的一組函數(shù)。參數(shù)是由一個(gè)對(duì)象(記住python中一切皆是對(duì)象)和一個(gè)字符串組成的。string參數(shù)必須是對(duì)象屬性名之一。該函數(shù)刪除該obj的一個(gè)由string指定的屬性。delattr(x, 'foobar')=del x.foobar
以上這篇淺談Python的getattr(),setattr(),delattr(),hasattr()就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Python中g(shù)etattr函數(shù)和hasattr函數(shù)作用詳解
- 詳解Python3 中hasattr()、getattr()、setattr()、delattr()函數(shù)及示例代碼數(shù)
- 詳解Python的hasattr() getattr() setattr() 函數(shù)使用方法
- 淺析Python中的getattr(),setattr(),delattr(),hasattr()
- 一文搞懂Python的hasattr()、getattr()、setattr()?函數(shù)用法
- 淺談python中的getattr函數(shù) hasattr函數(shù)
- python中hasattr()、getattr()、setattr()函數(shù)的使用
- 一次搞懂hasattr()/getattr()/setattr()在Python中的應(yīng)用
- Python學(xué)習(xí)筆記之getattr和hasattr用法示例詳解
相關(guān)文章
解決List.append()?在?Python?中不起作用的問(wèn)題
在?Python?中,我們通常使用?List.append()?方法向列表末尾添加元素,然而,在某些情況下,你可能會(huì)遇到?List.append()?方法不起作用的問(wèn)題,本文將詳細(xì)討論這個(gè)問(wèn)題并提供解決方法,需要的朋友可以參考下2023-06-06
計(jì)算python腳本執(zhí)行時(shí)間的多種方法
在編寫(xiě)Python腳本時(shí),了解腳本的執(zhí)行時(shí)間通常是很有用的,特別是在優(yōu)化代碼或評(píng)估性能時(shí),Python提供了多種方法來(lái)測(cè)量腳本的執(zhí)行時(shí)間,從內(nèi)置模塊到第三方庫(kù),可以選擇適合你需求的方式,本文將介紹計(jì)算 Python 腳本執(zhí)行時(shí)間的多種方法,需要的朋友可以參考下2023-11-11
python 基于DDT實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)測(cè)試
這篇文章主要介紹了python 基于DDT實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)測(cè)試的方法,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-02-02
python神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)使用Keras進(jìn)行回歸運(yùn)算
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)使用Keras進(jìn)行回歸運(yùn)算,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
這篇文章主要介紹了如何在 Python 中導(dǎo)入文本文件,在Python中導(dǎo)入文本文件是很常見(jiàn)的操作,我們可以使用內(nèi)置的open函數(shù)和with語(yǔ)句來(lái)讀取或?qū)懭胛谋疚募枰呐笥芽梢詤⒖枷?/div> 2023-05-05
python中join與os.path.join()函數(shù)實(shí)例詳解
os.path.join()函數(shù)用于路徑拼接文件路徑,下面這篇文章主要給大家介紹了關(guān)于python中join與os.path.join()函數(shù)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-03-03
python selenium執(zhí)行所有測(cè)試用例并生成報(bào)告的方法
今天小編就為大家分享一篇python selenium執(zhí)行所有測(cè)試用例并生成報(bào)告的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-02-02最新評(píng)論

