流畅的python-学习笔记_协议+继承优缺点

接口和协议

python动态语言,没有interface等概念,接口和协议方法有的也有替代品,所以类似于鸭子类型,只关注行为像鸭子,不关注它是不是鸭子。不是每个接口都得实现,这是允许的

猴子补丁

可动态给对象添加新方法,又不改变对象源代码,这种方法叫 猴子补丁。它会使代码更耦合

应该少用isinstance,而是用多态,分配给对应的处理

子类化内置类

即从自定义class继承于内置类型会有问题,因为派生子类的特殊方法,解释器不一定会调用你的方法,会导致问题。这类内置类不便于扩展,有专门用于扩展的类,可以继承这些类

多重继承

菱形继承时,py会有自己的方法查找顺序,这个顺序叫MRO,Method Resolution Order,可以通过类的__mro__方法访问mro

多继承类声明顺序也会影响mro

多重继承处理

相关推荐
霖霖7141 分钟前
【ESP32笔记】RGB灯WS2812实验
笔记·单片机·mcu·物联网
Aurora_eye4 分钟前
Git 笔记
笔记·git
yi01116 分钟前
DAY28: LeetCode 111. 二叉树的最小深度
人工智能·笔记·python·算法·leetcode·二叉树·递归
诸神缄默不语40 分钟前
小春学习日刊 2026年第1期:2026.10.13
学习
xxwl5851 小时前
三、区域赛算法模版第三章---字符串相关算法
笔记·学习·算法
卿卿的产品经理日记1 小时前
【AI产品经理实战】Day 37|拆开 JSON 与 EXE:数据都有格式
人工智能·笔记·python·json·产品经理
辣知1 小时前
辣知·化智80 《道德经》和光同尘的智慧
学习
wdfk_prog2 小时前
LWIP教程 15:IPv4 与 IPv6——从网络层工作原理到嵌入式工程取舍
运维·开发语言·网络·笔记·学习·智能路由器·ip
chde2Wang2 小时前
numpy学习3
学习·numpy
坤坤子吖2 小时前
Linux 进程信号入门——从 Ctrl+C 到 kill
linux·开发语言·c++·笔记·学习