Python编程中的魔法方法、上下文管理器与继承机制
1. 魔法方法(Magic Methods)
1.1 魔法方法概述
在Python里,魔法方法能够让你为内置操作定义自定义行为。魔法方法的前后都带有两个下划线,因此有时也被称作双下划线方法(dunder methods)。在之前的代码示例中,我们已经接触过一些魔法方法,例如:
- __init__ :在第10章里,用于构建类,每当创建类的实例时就会调用该方法。
- __lt__ 、 __gt__ 等:在第9章中,用于定义两个对象使用 < 或 > 进行比较时的行为。
- __getitem__ :在第5章里,用于拦截使用方括号进行索引的调用,像 recipes['Stromboli'] 这种情况。
1.2 示例:使用 __add__ 控制加法行为
以下是一个使用 __add__ 魔法方法控制加法行为的示例代码:
from dataclasses import dataclass
# 假设ImperialMeasure是一个枚举类
class ImperialMeasure:
CUP = 'cup'
TABLESPOON = 'tablespoon'
TEASPOON = 'teaspoon'
@data
超级会员免费看
订阅专栏 解锁全文

1311

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



