处理属性的重要属性和函数
1、特殊属性
__class__:对象所属类的引用(即obj.__class__和type(obj)的作用相同)。Python中的某些特殊方法比如 __getattr__,只在对象的类中寻找,而不在实例中寻找。__dict__:一个映射,存储对象或类的可写属性。__slots__:类可以定义这个属性,限制实例有哪些属性。
2、内置函数
dir([object]):列出对象的大多数属性。getattr(object,name[,default]):从object对象中获取name字符串对应的属性。获取的属性可能来自对象所属的类或超类。hasattr(object,name):若object对象中存在指定的属性,或者能以某种方式(如继承)通过object对象获取指定的属性,返回True。setattr(object,name,value):把object对象指定属性的值设为value,前提是object对象能接受那个值。这个函数可能会创建一个新属性,或者覆盖现有的属性。var([object]):返回object对象的__dict__属性。
3、特殊方法
__delattr__(self,name):只要使用 del 语句删除属性,就会调用此方法。 __dir__(self):当对象传递给 dir 函数时调用,列出属性。 __getattr__(self,name):如果指定属性获取失败,仅在搜索obj、Class和superclass后调用。 __getattribute__(self,name):尝试获取指定属性时总是调用此方法。例外情况是你要查找的属性是特殊属性或特殊方法。为了防止递归,__getattribute__ 方法的实现使用 super().__getattribute__(obj,name)。 __setattr__(self, name, value):尝试设置指定属性时总是调用此方法。 dot 和 setattr 内置函数触发此方法。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 100 个 Python 学习模块,从新手到高级11/17
- ♥ python如何创建venv虚拟环境12/13
- ♥ Python 和单元测试11/21
- ♥ Python使用库绘制三维图形的方法12/28
- ♥ python的基本数据类型有哪些12/30
- ♥ python如何杀死一个进程09/05
内容反馈