修饰器1

it2022-05-05  137

class Registry: def __init__(self): self._functions=[] def register(self,decorated): self._functions.append(decorated) return decorated def run_all(self,*args,**kwargs): return_values=[] for func in self._functions: return_values.append(func(*args,**kwargs)) print(return_values) return return_values a=Registry() b=Registry() @a.register def foo(x=3): return x @b.register def bar(x=5): return x @a.register @b.register def baz(x=7): return x a.run_all(x=5) b.run_all()

 

转载于:https://www.cnblogs.com/xuyuchen/p/8504731.html


最新回复(0)