指定在许多功能结束时要执行的操作

Bor*_*lik 1 python oop

我有一个python对象,其中一堆函数需要在执行结束时执行相同的操作,就在return语句之前.例如:

def MyClass(object):
    def __init__(self):
        pass

    def update_everything(self):
        '''update everything'''
        pass

    def f1(self):
        #do stuff
        self.update_everything()
        return result

    def f2(self):
        #do stuff
        self.update_everything()
        return result

    def f3(self):
        #do stuff
        self.update_everything()
        return result
Run Code Online (Sandbox Code Playgroud)

除了每个函数末尾的显式调用之外,最好的(pythonic?)方法是什么?

Tim*_*ker 6

我认为你的问题的任何解决方案都是unpythonic,因为(正如Tim Peters在Python的Zen中所说的那样import this):

Explicit is better than implicit.
Run Code Online (Sandbox Code Playgroud)