博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python内建函数getattr备注
阅读量:6764 次
发布时间:2019-06-26

本文共 928 字,大约阅读时间需要 3 分钟。

hot3.png

首先看下文档(python 2.6.6):

getattr(...)

    getattr(object, name[, default]) -> value
   
    Get a named attribute from an object; getattr(x, 'y') is equivalent to x.y.
    When a default argument is given, it is returned when the attribute doesn't
    exist; without it, an exception is raised in that case.
简单翻译一下:从一个对象中获取属性(方法);getattr(x, 'y')相当于x.y,给定一个默认的参数当该对象不存在要获取的属性时同时会抛出一个异常。

下面两个简单的例子:

1:利用Import getattr实现懒加载。

class LazyImport:    def __init__(self,module_name):        self.module_name = module_name        self.module      = None            def __getattr__(self,name):        if self.module is None:            self.module = __import__(self.module_name)            return getattr(self.module,name)string = LazyImport("string")print string.lowercase

2:本地类属性获取

class Test:    name = "liujijun"    def hello(self):        print 'This is hello'test = Test()hello = getattr(test,'hello')hello()

转载于:https://my.oschina.net/20130614/blog/119591

你可能感兴趣的文章
dvi转vga接口图及相关接法
查看>>
java排序——选择排序
查看>>
Slide:了解Oracle critical patch update
查看>>
用grunt搭建自动化的web前端开发环境-完整教程
查看>>
SSH密钥对批量认证Python脚本
查看>>
大型网络初试题
查看>>
Java API实现国际化资源文件
查看>>
Centos下Yum安装PHP5.5,5.6,7.0
查看>>
文本处理三剑客之sed基础用法
查看>>
IOS 各版本下载地址
查看>>
【行为型】- 迭代器模式
查看>>
邮件系统5大绝招解决中毒难题!!!
查看>>
hessian应用示例
查看>>
json_decode和json_encode的用法
查看>>
maven中引用JDK中的tools.jar
查看>>
Linux共享库注入后门
查看>>
程序员必备! 向您推荐一款APP开发和测试的工具!
查看>>
【SQL Server学习笔记】XML、分层、空间数据
查看>>
ElsticStake安装之Logstash6.4.0 安装(二)
查看>>
chrome 快捷键
查看>>