Python面向对象编程中的特殊方法、抽象基类、装饰器与元类
1. 特殊方法
在Python中,特殊方法(也称为魔术方法)是一些以双下划线开头和结尾的方法,它们为类提供了与Python内置操作和语法的交互能力。以下是一些常见的特殊方法及其用途:
1.1 __len__ 方法
调用 len(x) 实际上会调用 x.__len__() ,其他需要知道容器 x 中元素数量的内置函数也是如此。 __len__ 方法应该返回一个整数,表示容器 x 中元素的数量。当 __nonzero__ (在Python 3中为 __bool__ )方法缺失时,Python在布尔上下文中评估 x 时也会调用 x.__len__() 。在这种情况下,只有当容器为空(即容器的长度为0)时,容器才被视为 False 。所有容器都应该实现 __len__ 方法,除非确定容器中元素数量的成本过高。
1.2 __setitem__ 方法
当执行类似 x[key] = value 的赋值操作时,Python会调用 x.__setitem__(key, value) 。只有当容器 x 是可变的,即可以添
超级会员免费看
订阅专栏 解锁全文
62

被折叠的 条评论
为什么被折叠?



