魔法属性
Python的类属性存在着一些具有特殊含义的魔法属性,下面列举了一些:
1. __doc__
- 表示类的描述信息
2. __module__ 和 __class__
- __module__ 表示当前操作的对象在那个模块
- __class__ 表示当前操作的对象的类是什么
3. __dict__
- 类或对象中的所有属性
类的实例属性属于对象;类中的类属性和方法等属于类
4. __init__
- 初始化方法,通过类创建对象时,自动触发执行
5. __del__
- 当对象在内存中被释放时,自动触发执行。
注:此方法一般无须定义,因为Python是一门高级语言,程序员在使用时无需关心内存的分配和释放,因为此工作都是交给Python解释器来执行,所以,__del__的调用是由解释器在进行垃圾回收时自动触发执行的。
6. __str__
- 如果一个类中定义了__str__方法,那么在打印 对象 时,默认输出该方法的返回值。
7. __call__(了解)
- 对象后面加括号,触发执行。
注:__init__方法的执行是由创建对象触发的,即:对象 = 类名()
;而对于 __call__ 方法的执行是由对象后加括号触发的,即:对象()
或者 类()()
8、__getitem__、__setitem__、__delitem__(了解)
- 用于索引操作,如字典。以上分别表示获取、设置、删除数据
9、__getslice__、__setslice__、__delslice__(了解)
- 该三个方法用于分片操作,如:列表