zoukankan      html  css  js  c++  java
  • python getattr()

    About getattr

    Python’s getattr function is used to fetch an attribute from an object, using a string object instead of an identifier to identify the attribute. In other words, the following two statements are equivalent:

    value = obj.attribute
    value = getattr(obj, "attribute")

    If the attribute exists, the corresponding value is returned. If the attribute does not exist, you get an AttributeError exception instead.

    这个函数的作用相当于是object.name

    使用getattr可以轻松实现工厂模式。

    例:一个模块支持html、text、xml等格式的打印,根据传入的formate参数的不同,调用不同的函数实现几种格式的输出

    1
    2
    3
    4
    import statsout 
    def output(data, format="text"):                           
        output_function = getattr(statsout, "output_%s" %format
        return output_function(data)

    这个例子中可以根据传入output函数的format参数的不同 去调用statsout模块不同的方法(用格式化字符串实现output_%s)

    返回的是这个方法的对象 就可以直接使用了 如果要添加新的格式 只需要在模块中写入新的方法函数 在调用output函数时使用新的参数就可以使用不同的格式输出

    参考:http://www.cnblogs.com/pylemon/archive/2011/06/09/2076862.html

  • 相关阅读:
    A 第一课 链表
    CSS基础_01:
    html基础(2)
    冒泡_选择算法
    高等数学以及Python 实现
    ubuntu18.04 镜像下载
    MatplotLib 第二部分
    一件很好笑的事情
    HIVE文件
    一个关于消息结构体的讨论
  • 原文地址:https://www.cnblogs.com/yongpan666/p/3786107.html
Copyright © 2011-2022 走看看