🗒️Python面向对象编程10—神奇的反射
00 分钟
2024-8-2
2024-8-8
type
status
date
slug
summary
tags
category
icon
password

什么是反射

反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力(自省)。这一概念的提出很快引发了计算机科学领域关于应用反射性的研究。它首先被程序语言的设计领域所采用,并在Lisp和面向对象方面取得了成绩。
python面向对象中的反射:通过字符串的形式操作对象相关的属性。python中的一切事物都是对象(都可以使用反射)
 
 

四个可以实现自省的函数

下列方法适用于类和对象(一切皆对象,类本身也是一个对象)
getattr() 获取属性 hasattr() 检查属性 setattr() 设置属性 delattr() 删除属性
 

反射一个文件里是否有某个属性

 
notion image
 

反射的应用

反射的应用 了解了反射的四个函数。那么反射到底有什么用呢?它的应用场景是什么呢? 现在让我们打开浏览器,访问一个网站,你单击登录就跳转到登录界面,你单击注册就跳转到注册界面,等等,其实你单击的其实是一个个的链接,每一个链接都会有一个函数或者方法来处理。
 

没学反射之前的解决方式

 

学了反射以后的解决方式

 
 
 

打赏

如果您觉得我的内容对你有所帮助,不要吝啬你的一键三连!如果你有能力的话也可以通过下面请我喝杯咖啡~金额您随意~如果对文章内容有任何疑问,欢迎加入群组联系我~
notion image
上一篇
Python面向对象编程9—属性方法property
下一篇
Python面向对象编程11—动态加载模块