久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

Python通過getattr函數獲取對象的屬性值

瀏覽:4日期:2022-07-08 09:36:42

英文文檔:

getattr(object, name[, default])Return the value of the named attribute of object. name must be a string. If the string is the name of one of the object’s attributes, the result is the value of that attribute. For example, getattr(x, ’foobar’) is equivalent to x.foobar. If the named attribute does not exist, default is returned if provided, otherwise AttributeError is raised.

獲取對象的屬性值

說明:

1. 函數功能是從對象object中獲取名稱為name的屬性,等效與調用object.name。

#定義類Student>>> class Student: def __init__(self,name): self.name = name >>> s = Stduent(’Aim’)>>> getattr(s,’name’) #等效于調用s.name’Aim’>>> s.name’Aim’

2. 函數第三個參數default為可選參數,如果object中含義name屬性,則返回name屬性的值,如果沒有name屬性,則返回default值,如果default未傳入值,則報錯。

#定義類Student>>> class Student: def __init__(self,name): self.name = name>>> getattr(s,’name’) #存在屬性name’Aim’>>> getattr(s,’age’,6) #不存在屬性age,但提供了默認值,返回默認值6>>> getattr(s,’age’) #不存在屬性age,未提供默認值,調用報錯Traceback (most recent call last): File '<pyshell#17>', line 1, in <module> getattr(s,’age’)AttributeError: ’Stduent’ object has no attribute ’age’

與__getattr__的區別:

__getattr__是類的內置方法,當找不到某個屬性時會調用該方法;找到就不會調用.

getattr與類無關.

一個例子:作為data的代理類,可以以這種方式來使用data的屬性.

class DataProxy(...): def __getattr__(self, item): return getattr(self.data, item)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 亚洲三级网站 | 中文字幕日韩在线 | 久久久久久国产精品高清 | 欧美日韩一区二区三区 | 国产视频一区在线 | 亚洲三区视频 | 亚洲久久 | 久久久久久综合 | 九九免费在线观看 | 国产一区a | 91亚洲在线 | 国产精品美女久久久久久久久久久 | 91中文字幕在线 | 欧美一区精品 | av高清在线看 | 91精品国产综合久久福利软件 | 亚洲精品日韩综合观看成人91 | 国产福利在线观看视频 | 精品国产不卡一区二区三区 | 久久久av | 国产精品免费观看 | 久久久av| 日韩电影免费在线观看中文字幕 | www.欧美.com| 天天天天天天天操 | 亚洲aⅴ天堂av在线电影软件 | 亚洲三级在线播放 | 亚洲欧洲精品成人久久奇米网 | 蜜月久久99静品久久久久久 | 拍真实国产伦偷精品 | 国产在线一区二区三区 | av av在线 | 亚洲欧美日韩电影 | 久久999| 国产精品永久免费自在线观看 | 成人毛片在线观看 | 国产美女啪啪 | 成人精品鲁一区一区二区 | 国产精品久久久久久 | 久久久久久久 | 成人黄色在线视频 |