zoukankan      html  css  js  c++  java
  • Python学习——反射

    class Foo(object):
        def __init__(self):
            self.name = 'wupeiqi'
            # self.age = age
    
        def func(self):
            print("func is running.")
            return 'func'
    
    
    obj = Foo()
    
    # #### 检查是否含有成员 ####
    print(hasattr(obj, 'name'))
    print(hasattr(obj, 'func'))
    
    # # #### 获取成员 ####
    print(getattr(obj, 'name'))
    print(getattr(obj, 'func'))
    getattr(obj, 'func')()
    #
    # # #### 设置成员 #### 相当于增加成员。
    print(setattr(obj, 'age', 18))
    print(obj.age)
    setattr(obj, 'show', lambda num: num + 1)
    print(obj.show(8))
    #
    # # #### 删除成员 ####
    # delattr(obj, 'name')
    # delattr(obj, 'func')
    
    #反射代码示例

    class Foo(object):
    def __init__(self):
    self.name = 'wupeiqi'
    # self.age = age

    def func(self):
    print("func is running.")
    return 'func'


    obj = Foo()

    # #### 检查是否含有成员 ####
    print(hasattr(obj, 'name'))
    print(hasattr(obj, 'func'))

    # # #### 获取成员 ####
    print(getattr(obj, 'name'))
    print(getattr(obj, 'func'))
    getattr(obj, 'func')()
    #
    # # #### 设置成员 #### 相当于增加成员。
    print(setattr(obj, 'age', 18))
    print(obj.age)
    setattr(obj, 'show', lambda num: num + 1)
    print(obj.show(8))
    #
    # # #### 删除成员 ####
    # delattr(obj, 'name')
    # delattr(obj, 'func')

    #反射代码示例
  • 相关阅读:
    使用idea15搭建基于maven的springmvc-mybatis框架
    git本地提交到远程仓库命令
    jsp表格数据导出到Execl
    FreeMarker标签介绍
    FreeMarker常用语法
    mybatis批量删除
    git之https或http方式设置记住用户名和密码的方法
    INPUT只能输入数字
    mysql 日期格式化
    cygwin配置git
  • 原文地址:https://www.cnblogs.com/Ian-learning/p/8453116.html
Copyright © 2011-2022 走看看