Powiedzmy mamy następujących klas:Rozszerzanie zachowanie odziedziczonej funkcji w Pythonie
class Base(object):
def load(self):
# do logic A
# do logic B
class Child(Base):
def load(self):
# do logic C
wiem dekoratorzy mogą być wykorzystane do rozszerzenia zachowanie funkcji w Pythonie, ale nie wiem, jak mogę go zastosować w moim przypadku. Kiedy Child's
load()
nazywa się, jak mogę uzyskać następujące egzekucje kodu w tej kolejności ?:
logic A
logic C
logic B
Co Nie chcą zrobić
class Base(object)
def logicA()
pass
def logicB()
pass
def load()
pass
class Child(Base):
def load(self):
super.logicA()
# do logic C
super.logicB()
Chcę tylko zakodowanie logika C, bez konieczności jawnego wywoływania logiki A i B
logika Podział A i B do dwóch różnych funkcji? – thefourtheye