先摘录书中的原话:
数据模型其实是对 Python 框架的描述,它规范了这门语言自身构建模块的接口,这些模块包括但不限于序列、迭代器、函数、类和上下文管理器。
通常在不同框架下写程序,都需要花时间来实现那些会被框架调用的方法,python 当然也包含这些方法,当 python 解释器碰到特殊的句法的时候,会使用特殊方法来激活一些基本的对象操作,这种特殊方法,也叫做魔术方法(magic method),通常以两个下划线开头和结尾,比如最常见的 __init__, __len__ 以及 __getitem__ 等,而 obj[key] 这样的操作背后的特殊方法是 __getitem__,初始化一个类示例的时候,如 obj= Obj() 的操作背后,特殊方法就是 __init__。
下面是对书中代码的实现:
代码
运行结果
下面是写了一个函数对纸牌进行排序