当前位置: 首页 > news >正文

Python 反射

Python 反射是什么?

学习了几天,做个总结留给自己看。

感觉跟 SQL 入门要掌握的原理一样,Python 反射看起来也会做4件事,“增删查获”

增 - 增加属性,方法 

setattr

删 - 删除属性,方法

delattr

查 - 查找是否存在属性,方法

hasattr

获 - 获取属性,方法

getattr

举个例子

class Student:city = "Shanghai"def __init__(self, name, age, sex):self.name = nameself.age = ageself.sex = sexdef hello_student(self):name = self.nameprint("你好: {}".format(name))Jack = Student("Jack", 6, "123456789")print(getattr(Student, 'city'))
print(hasattr(Student, "city"))
print(hasattr(Student, "hello_student"))
print(hasattr(Student, "hello_jack"))getattr(Student, "my_info")()setattr(Jack, "name", "Tom")
print(getattr(Jack, "name"))def hello_student_new(self):name = self.nameprint("新朋好友你好: {}".format(name))setattr(Jack, "my_name", hello_student_new)
getattr(Jack, "hello_student_new")()delattr(Student, "city")
print(getattr(Student, 'city'))delattr(Student, "name")
print(getattr(Student, "name"))delattr(Student, "hello_student_new")
print(getattr(Student, "hello_student_new"))

这些例子基本涵盖了四种用法。

http://www.lryc.cn/news/259311.html

相关文章:

  • HTML基本网页制作
  • Tcl语言语法精炼总结
  • [GPT]Andrej Karpathy微软Build大会GPT演讲(下)--该如何使用GPT助手
  • 路由器静态路由的配置
  • [Firefly-Linux] RK3568在Ubuntu上安装内核头文件实现本地编译驱动程序
  • RabbitMQ Streams 详解
  • 跨境电商如何利用跨境客服软件提升销售额
  • css/less/scss代码注意事项
  • Git应用——代码提交规范 feat ,fix ,style
  • TDengine Kafka Connector将 Kafka 中指定 topic 的数据(批量或实时)同步到 TDengine
  • 单片机的低功耗模式介绍
  • 基于SSM实现的精品课程网站
  • 广州旅游攻略(略说一二)
  • C++STL的list模拟实现
  • django--分页功能
  • centOS安装bochsXshell连接centos启动可视化界面
  • mac m2芯片 安装nginx + php + mysql
  • vue axios 使用
  • 使用docker实现logstash同步mysql到es
  • hive数据仓库工具
  • C语言 联合体验证 主机字节序 +枚举
  • python和pygame实现烟花特效
  • gRPC-Gateway:高效转换 RESTful 接口 | 开源日报 No.105
  • 非专业的建模人员如何给模型设置材质纹理贴图?
  • 自动化测试、压力测试、持续集成
  • FFmpeg之HWContextType
  • Python面向对象之类和对象(Python系列16)
  • 电商对传统零售业的影响:销售渠道、价格竞争与服务质量挑战
  • DENet:用于可见水印去除的Disentangled Embedding网络笔记
  • C++初阶(十五)Stack和Queue