标签: python python-3.x oop
对于给定的类,是否更好/更好/更符合Python Zen覆盖方法(即,为其分配另一个函数)或从该类派生并在新类中覆盖它。
所以这个:
from foo import Bar def mybaz(self): pass Bar.baz = mybaz
或者:
from foo import bar class Mybar(Bar): def baz(self): pass
如果有所作为,请参阅Python3
跟进:魔术方法的答案是不同的?
答案 0 :(得分:2)
第二种方式更可取,因为它不会改变基类,但扩展它,看看open/closed principle.