17、Python元类与异常处理全解析

Python元类与异常处理详解

Python元类与异常处理全解析

1. 元类如何创建类

在Python中,当确定元类 M 后,Python会使用三个参数调用 M :类名(字符串形式)、基类元组 t 以及类体执行完成后的字典(在Python 3中,也可以是 __prepare__ 方法返回的其他映射) d 。这个调用会返回类对象 C ,随后Python将其绑定到类名上,完成类语句的执行。实际上,这是元类 M 的一次实例化过程,调用 M 时会执行 M.__init__(C, namestring, t, d) ,其中 C M.__new__(M, namestring, t, d) 的返回值,这与其他类的实例化过程类似。

类对象 C 创建完成后,类 C 与其类型(通常是元类 M )之间的关系,和任何对象与其类型之间的关系相同。例如,当调用类对象 C 来创建 C 的实例时,会以类对象 C 作为第一个参数执行 M.__call__

这里体现了Python“新式”对象模型的优势,特殊方法只在类上查找,而不在实例上查找,这与Python 2的“旧式”对象模型不同。无论 C

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值