• 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

  • 相关阅读:
    使用npm安装包失败的解决办法(使用npm国内镜像介绍)
    JavaScript的变量、作用域和内存问题
    JavaScript的基本概念
    在Html中使用JavaScript
    JavaScript简介
    C++为了兼容,所以并不是纯面向对象编程语言
    C++四种不同的对象生存方式
    Java BigDecimal使用
    ext 对齐
    ext grid 子表格
  • 原文地址:https://www.cnblogs.com/yongpan666/p/3786107.html
Copyright © 2020-2023  润新知