焦点资讯:Python面向对象编程-反射 - 综合 -

当前位置:首页  >  综合  > 正文

焦点资讯:Python面向对象编程-反射

焦点资讯:Python面向对象编程-反射
2023-04-22 16:08:34 来源:腾讯云


(资料图片)

在Python中,反射是一种动态访问和修改对象属性和方法的机制。通过反射,我们可以在运行时获取对象的属性和方法,以及修改它们的值。反射可以帮助我们编写更灵活、更通用、更易维护的代码,例如实现通用的配置文件解析、ORM框架、远程调用等。

Python中的反射主要包括以下几个函数和方法:

dir(obj):返回对象的所有属性和方法的列表。getattr(obj, name[, default]):获取对象的指定属性或方法,如果属性或方法不存在则返回默认值或引发AttributeError异常。setattr(obj, name, value):设置对象的指定属性或方法的值。delattr(obj, name):删除对象的指定属性或方法。

下面是一个简单的反射示例,演示如何使用反射来访问和修改对象的属性和方法:

class MyClass:    x = 1    y = 2        def foo(self):        print("foo")        obj = MyClass()        # 使用dir函数获取对象的属性和方法列表print(dir(obj))# 使用getattr函数获取对象的属性和方法print(getattr(obj, "x"))         # 输出:1print(getattr(obj, "y"))         # 输出:2getattr(obj, "foo")()           # 输出:foo# 使用setattr函数设置对象的属性和方法setattr(obj, "x", 10)setattr(obj, "y", 20)setattr(obj, "foo", lambda self: print("bar"))print(obj.x)                     # 输出:10print(obj.y)                     # 输出:20obj.foo()                        # 输出:bar# 使用delattr函数删除对象的属性和方法delattr(obj, "x")delattr(obj, "y")delattr(obj, "foo")print(dir(obj))                  # 输出:[]

在上面的示例中,我们定义了一个名为MyClass的类,它有两个属性x和y和一个方法foo。然后,我们创建了一个MyClass的对象obj。

首先,我们使用dir函数获取对象的所有属性和方法,并打印输出它们的列表。

接着,我们使用getattr函数获取对象的属性和方法,使用字符串参数指定属性和方法的名称。如果属性或方法不存在,则getattr函数会引发AttributeError异常,可以使用默认值参数避免异常。我们还演示了如何调用对象的方法。

然后,我们使用setattr函数设置对象的属性和方法的值,使用字符串参数指定属性和方法的名称。如果属性或方法不存在,则setattr函数会创建一个新的属性或方法。我们还演示了如何设置对象的方法的值,并使用新的lambda表达式替换原有的方法。

最后,我们使用delattr函数删除对象的属性和方法,使用字符串参数指定属性和方法的名称。如果属性或方法不存在,则delattr函数会引发AttributeError异常。

标签:

(责任编辑:news01)
【异动股】乳业板块拉升,天润乳业(600419.CN)涨9.89%

【异动股】乳业板块拉升,天润乳业(600419.CN)涨9.89%

【财华社讯】今日早盘,截至10:15,乳业板块拉升。天润乳业(600419 CN)涨9 89%报19 12元,麦趣尔(002719 CN)涨7 66%报11 8
04-21 15:34:06
印度能否成为全球显示面板业的新一极?|如数家珍

印度能否成为全球显示面板业的新一极?|如数家珍

中国台湾面板企业群创转让技术,日韩配套企业提供支持,印度首条第8 6代液晶(LCD)面板生产线将于今年年底
04-21 15:20:40
当前观点:2023年一季度兖矿能源商品煤产量下降10.41% 销量下降2.91%

当前观点:2023年一季度兖矿能源商品煤产量下降10.41% 销量下降2.91%

2023年一季度兖矿能源商品煤产量下降10 41%销量下降2 91%,兖矿能源近日发布的公告显示,2023年一季度公司商
04-21 15:08:24
青园教育集团数学名师工作室联合教研 为工作室发展赋能 焦点速递

青园教育集团数学名师工作室联合教研 为工作室发展赋能 焦点速递

青园教育集团数学名师工作室联合教研为工作室发展赋能
04-21 14:55:11
天天看点:快讯2023-04-21 04:10:01

天天看点:快讯2023-04-21 04:10:01

4月21日电,全食超市(WholeFoods)计划裁员几百人。
04-21 14:04:57
邮政银行邮益宝普通转出几天到账? 邮政银行邮益宝资金转出到账时间|最新消息

邮政银行邮益宝普通转出几天到账? 邮政银行邮益宝资金转出到账时间|最新消息

邮政银行邮益宝普通转出几天到账?最快是1天到账,否则就是2天到账,主要是看在哪个时间点申请的转出,T
04-21 13:32:02
居民楼起火致21人被困!这个习惯很多人有……-热头条

居民楼起火致21人被困!这个习惯很多人有……-热头条

居民楼起火致21人被困!这个习惯很多人有……
04-21 13:30:04
热文:农业农村部:农民种豆的意愿有所回升

热文:农业农村部:农民种豆的意愿有所回升

App4月20日消息,农业农村部种植业管理司司长潘文博今日在新闻发布会上表示,由于前期大豆市场价格走低、比
04-21 13:27:16
今日要闻!奔驰最高级纯电SUV!配置都不是重点 价格也就亿点点贵?

今日要闻!奔驰最高级纯电SUV!配置都不是重点 价格也就亿点点贵?

梅赛德斯-奔驰品牌官方正式发布了全新纯电SUV车型——梅赛德斯-迈巴赫EQSSUV。豪华程度堪称汽车头等舱。
04-21 12:43:15
每日视点!毕业生求职高峰期,这五点要防范!教育部发提示

每日视点!毕业生求职高峰期,这五点要防范!教育部发提示

毕业生求职高峰期,这五点要防范!教育部发提示
04-21 12:42:19
跨越五百多公里,从四川成都到凉山彝族自治州木耳小学一份心愿书单的旅程(读书日特别报道)

跨越五百多公里,从四川成都到凉山彝族自治州木耳小学一份心愿书单的旅程(读书日特别报道)

图①:阿合布吉(左)和阿合尔曲姐妹。图②:木耳小学阅览室。图③:孩子们写好的心愿卡。图④:大山里的读
04-21 12:15:52
【天天快播报】女生短裙照片_女生短裙

【天天快播报】女生短裙照片_女生短裙

1、女孩为什么穿短裙?先将这句话划分为六个部分:“女”“孩”“为什么”“穿”“短”“裙”?“男”孩也...
04-21 11:57:25
s弯路打方向技巧_s弯路

s弯路打方向技巧_s弯路

1、操作方法  (1)车辆驶近S弯路时,将车辆保持在左右边线的中间直线行驶;  (2)当车头左角在视觉上
04-21 11:39:38
全球速读:首批权益基金一季报出炉!基金经理热议GPT热门板块 上车吗?

全球速读:首批权益基金一季报出炉!基金经理热议GPT热门板块 上车吗?

公募基金一季报逐渐拉开帷幕。截至目前,已有千只(AC份额分开计算)权益类公募基金产品公布2023年第一季度
04-21 10:51:37
每日快报!中铁四局八分公司官网_中铁四局八分公司

每日快报!中铁四局八分公司官网_中铁四局八分公司

1、我就是中铁四局的,中铁四局八公司的前身是铁四局新线铁路运输处,负责新建铁路的铺轨、架梁、铁路临管工
04-21 10:51:03
央行:住户部门消费和投资意愿正在回升

央行:住户部门消费和投资意愿正在回升

央行:住户部门消费和投资意愿正在回升
04-21 10:38:23
环球看热讯:生猪养殖已亏损近5个月 农业农村部:二季度末有望实现扭亏为盈

环球看热讯:生猪养殖已亏损近5个月 农业农村部:二季度末有望实现扭亏为盈

经济观察网记者陈姗去年年底开始,国内生猪自繁自养与仔猪育肥盈利由正转负,目前已亏损近5个月。4月20日,
04-21 10:02:49
天天即时看!东湖评论:小学生“电摇”成风,亟需正确引导

天天即时看!东湖评论:小学生“电摇”成风,亟需正确引导

东湖评论:小学生“电摇”成风,亟需正确引导---任何事物的发展都有其两面性,网络是孩子成长路上的双刃...
04-21 09:42:19
央行:一季度宏观杠杆率回升 有一定季节性因素

央行:一季度宏观杠杆率回升 有一定季节性因素

新京报贝壳财经讯(记者姜樊)4月20日,央行召开新闻发布会,就2023年一季度金融统计数据有关情况答记者问
04-21 09:39:15
123-109!布克38+9,杜兰特25分,太阳胜快船系列赛1-1追平

123-109!布克38+9,杜兰特25分,太阳胜快船系列赛1-1追平

123-109!布克38+9,杜兰特25分,太阳胜快船系列赛1-1追平,快船队,美国篮球,凯文杜兰特,德文·布克,科怀·
04-21 09:30:08
荔枝蝽象的卵 数量_荔枝蝽

荔枝蝽象的卵 数量_荔枝蝽

1、荔枝蝽又名荔枝椿象。2、果树害虫,主要为害荔枝和龙眼;也为害其他无患子科植物。3、可以吃。4、有个记录
04-21 08:43:42
室内保温板材料厚度_室内保温材料哪种好

室内保温板材料厚度_室内保温材料哪种好

1、软瓷保温软瓷保温材料以天然泥土、石粉等无机物为原料,经分类混合、复合改性,在光化异构及曲线温度下
04-21 08:25:47
财务自由的门槛变高了

财务自由的门槛变高了

财务自由的门槛变高了,重疾险,普通人,保险公司,财政资金
04-21 08:14:44
召集“金主”为竞选“钱瞻” 80岁拜登将官宣参选? 世界微资讯

召集“金主”为竞选“钱瞻” 80岁拜登将官宣参选? 世界微资讯

01:39《纽约时报》透露,拜登召集“大金主”,下周末齐聚华盛顿,为连任竞选“钱瞻”。受邀者为上次竞选...
04-21 07:54:08
欧联杯4强出炉:曼联被淘汰!罗马尤文塞维晋级,药厂成德甲欧战独苗-全球速讯

欧联杯4强出炉:曼联被淘汰!罗马尤文塞维晋级,药厂成德甲欧战独苗-全球速讯

欧联杯4强出炉:曼联被淘汰!罗马尤文塞维晋级,药厂成德甲欧战独苗
04-21 07:21:43
谷雨 | 雨生百谷,万物逢时-当前热议

谷雨 | 雨生百谷,万物逢时-当前热议

文|心歌阕阕·主播|墨语·摄影|从看见到发现·编辑|一白今天是2023年4月20日,农历三月初一,谷雨。光阴...
04-21 06:33:47
速递!支持存量房“带押过户”!郑州住房公积金出台便民新举措

速递!支持存量房“带押过户”!郑州住房公积金出台便民新举措

记者从郑州公积金管理中心了解到,为更好地服务缴存职工购房安居,郑州公积金中心出台新举措,办理存量...
04-21 06:28:51
康清周|天天信息

康清周|天天信息

1、康清周,男,朝鲜族,出生日期1970年10月,1998年4月入党,1990年7月参加工作,毕业于吉林省委党校经济
04-21 06:09:30
安徽监狱管理局聘任29名执法监督员 当前速读

安徽监狱管理局聘任29名执法监督员 当前速读

法治日报讯记者李光明近日,安徽省监狱管理局召开执法监督员聘任会议,向29名新一届全省监狱系统执法监督员
04-21 05:47:34
昭衍新药(603127.SH)股东及董监高拟合计减持不超0.8%股份

昭衍新药(603127.SH)股东及董监高拟合计减持不超0.8%股份

智通财经讯,昭衍新药(603127 SH)发布公告,公司股东及董监高:左从林、姚大林、孙云霞、高大鹏、李叶、于
04-21 05:33:15

为您推荐

精彩推送