反射机制
反射机制的本质是以字符串形式在对象或模块中进行添加,查找,删除,获取成员等操作,是一种基于字符串的一系列事件驱动。
相关内置函数
- getattr(object, name[, default])
获取object对象中的name属性并返回其值,在name不存在时返回default,不设置则会抛出一个AttributeError。
- setattr(object, name, value)
设置object对象中name属性的值为value,name不存在时则创建属性并赋值。
- hasattr(object, name)
判断object对象中是否含有name属性,含有返回True,否则返回False。
- delattr(object, name)
删除object对象中的name属性。
- import(name[, globals[, locals[, fromlist[, level]]]])
参数为字符串,导入参数同名的模块或字符串。
反射机制的应用
有了以上内置函数,我们可以非常便利的实现动态的函数调用,模块导入,以及对象成员的“增删改查”等操作。
原文地址:http://blog.51cto.com/13992211/2348177
时间: 2024-10-31 02:16:19