【文件属性】:
文件名称:用来定制类的特殊方法-qt教学大纲
文件大小:5.26MB
文件格式:PDF
更新时间:2021-06-04 01:59:56
python 核心编程 中文版 高清文字版
a. Python2.2 中新增;仅对新式类有效
13.13 用特殊方法定制类
我们已在本章前面部分讲解了方法的两个重要方面:首先,方法必须在调用前被绑定(到它们
相应类的某个实例中);其次,有两个特殊方法可以分别作为构造器和析够器的功能,分别名为
__init__()和__del__()。
事实上,__init__()和__del__()只是可自定义特殊方法集中的一部分。它们中的一些有预定
义的默认行为,而其它一些则没有,留到需要的时候去实现。这些特殊方法是 Python 中用来扩充
类的强有力的方式。它们可以实现:
模拟标准类型
重载操作符
特殊方法允许类通过重载标准操作符+,*, 甚至包括分段下标及映射操作操作[] 来模拟标准
类型。如同其它很多保留标识符,这些方法都是以双下划线(__)开始及结尾的。表 13.4 列出了所有
特殊方法及其它的描述。
表 13.4 用来定制类的特殊方法
特殊方法 描述
基本定制型
C.__init__(self[, arg1, ...]) 构造器(带一些可选的参数)
C.__new__(self[, arg1, ...])
a
构造器(带一些可选的参数);通常用在设置不变数据类
型的子类。
C.__del__(self) 解构器
C.__str__(self) 可打印的字符输出;内建 str()及 print 语句
C.__repr__(self) 运行时的字符串输出;内建 repr() 和‘‘ 操作符
C.__unicode__(self)
b
Unicode 字符串输出;内建 unicode()