当前位置: 首页 > 网络应用技术

对Python反思的基本理解

时间:2023-03-09 13:18:09 网络应用技术

  在日常工作中,我们经常遇到以下问题:执行对象中的一种方法或属性,但是它无法确定方法或属性是否已提前存在。这次,需要一种特殊的方法或机制来访问属性或方法在这个情况下。这种机制称为反射,有时也称为自我进攻。

  让我们先看一个例子

  在上述参数中要求不同的方法实现不同的操作。这是非常普遍的。代码如下:

  结果:

  在此示例中,用户输入的符号是字符串(添加,减法和乘法的操作符号),并通过字典dict1获得了值的值,然后是gettttr函数,以找到cacculate class以查找cacculate class以找到该类别添加成员。此过程的过程。它等同于将字符串add转换为add()。然后将结果结果分配给func variable。网上调用func函数以实现添加函数的调用。对于课程,特定值此处的功能根据用户输入动态变化。

  这是Python的反射。本质是使用字符串的形式来操作对象中的成员,基于字符串的事件驱动器。此外,为了防止用户的非法输入,错误报告,这是以下判断hasattr函数可以判断对象中是否有相应的成员。