zoukankan      html  css  js  c++  java
  • python对象反射和函数反射

    python的对象反射功能,经常在编程时使用.相比较其它的编程语言使用非常方便.反射就是用字符串来操作对象或者类,模块中的成员.

    一.对象的反射

    反射功能的实现,由这4个内置函数来实现(hasattr, getattr, setattr, delattr)

    1.1.hasattr判断是否有某个成员

    判断对象中是否有属性, 方法.返回bool值

    上例中使用对象作为obj参数来判断,是否有类的静态方法.也是可以的.因为对象的特殊性,先在对象中找是否有该成员,如果没在,通过对象指针,在去创建这个对象的类中找查

    执行结果

     1.2.获取对象的成员

    也可以使用对象来获取类的成员.和上例中的hasattr一样

    1.3.增加对象或者类的成员

    动态的增加对象或者类中的成员

    执行结果

    1.4.使用delattr动态的删除类或者方法成员

    演示代码

    执行结果

    二.在当前模块中使用反射

    获取到对应的模块.

    以上是反射对类,对象,模块成员操作的基本方法.

    三.使用字符串自动导入模块

    依据传入的字符串,自动导入模块.类似上文的方法反射

    执行结果

    1
    2
    <module 'lib.aa' from 'D:\python\day10\lib\aa.py'>
    ait24
  • 相关阅读:
    Java基础之集合Collection一:
    Java基础之字符串String:
    Java基础之Map学习代码示例二:
    Jav基础之字符串缓冲区StringBuffer:
    Java基础之TreeSet集合使用泛型、比较器排序示例:
    Java基础之Map学习代码示例一:
    Java基础之StringBuilder
    Java基础之泛型限定的使用示例:
    Java基础之泛型的应用
    spark.primitives 包中的几个基本类
  • 原文地址:https://www.cnblogs.com/yanzi-meng/p/7930283.html
Copyright © 2011-2022 走看看