Python 附加继承对执行速度的影响

Python 附加继承对执行速度的影响,python,python-3.x,Python,Python 3.x,假设我的类(C)需要一些功能,这些功能目前在A类和B类中都可用。所以我决定继承我的类(C)中的A或B。A更完整,包括一些我永远不会使用的附加方法和变量。然而,我更喜欢使用,因为它似乎使我的代码在联合项目中更加统一。 我的问题是,与B相比,从A继承是否会影响代码速度?在CPython中,只要使用的每个方法/属性来自新层次结构中的相应类,更改类继承的类对其速度几乎没有影响。(当存在其他哈希表冲突时,“小”情况适用。)添加必须搜索的其他基(因为它们出现在满足查找的类之前的方法解析顺序中)将为每个属性搜

假设我的类(C)需要一些功能,这些功能目前在A类和B类中都可用。所以我决定继承我的类(C)中的A或B。A更完整,包括一些我永远不会使用的附加方法和变量。然而,我更喜欢使用,因为它似乎使我的代码在联合项目中更加统一。
我的问题是,与B相比,从A继承是否会影响代码速度?

在CPython中,只要使用的每个方法/属性来自新层次结构中的相应类,更改类继承的类对其速度几乎没有影响。(当存在其他哈希表冲突时,“小”情况适用。)添加必须搜索的其他基(因为它们出现在满足查找的类之前的方法解析顺序中)将为每个属性搜索添加字典查找


对于许多
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu,只要使用的每个方法/属性来自新层次结构中的相应类,更改类继承的类对其速度几乎没有影响。(当存在其他哈希表冲突时,“小”情况适用。)添加必须搜索的其他基(因为它们出现在满足查找的类之前的方法解析顺序中)将为每个属性搜索添加字典查找


对于许多
\uuuuuuu magic\uuuuuuuuuuuuu
方法,没有继承是重要的:为每个方法调用的函数是预先计算的,并在此后的固定时间内解析。

为了澄清:所谓“附加继承”是指通过选择不同的单基继承更多的方法/属性,而不是从单基继承切换到多基继承?是的,但如果你也能回答我A=B+B(我的意思是A本身从B和B继承)的情况,那就太好了。澄清一下:“附加继承”是指通过选择不同的单基继承更多的方法/属性,而不是从单基继承切换到多基继承?是的,但如果你也能回答我,如果A=B+B'(我的意思是A本身同时继承了B和B')