假设我有一个Python包,如下所示:
/summary
__init__.py
summary.py
/temperature
__init__.py
temperature.py
TempSummary类(在temperature.py中定义)继承自基类Summary(在summary.py中定义),分别定义为:
class TempSummary(Summary):
def __init__(self, f):
bar(f)
class Summary:
def __init__(self, f):
foo(f)
是否会将summary.py的内容复制到/ temperature并在复制的文件中修改那里的类方法,还是更加Pythonic继承TempSummary然后开始修改方法的行为?
答案 0 :(得分:0)
复制代码违反DRY(不要重复自己)。以平行方式维护两组代码成为一场噩梦。
这是OOP方法,用于sublcass并覆盖您选择的方法来创建自定义功能。
如果您要扩展某些Summary
方法,请记住call the parent method!