code snippet
"""filename: try-decorator.py"""
class AsyncClient:
def event(self, fn):
def wrapper(self, *args, **kwargs):
return fn(self, *args, **kwargs)
return wrapper
class Handler:
sio = AsyncClient()
@sio.event
def foo(self, msg):
print(f'foo => {msg = }')
@sio.event
def bar(self, msg):
print(f'bar => {msg = }')
if __name__ == '__main__':
obj = Handler()
obj.foo('hehe')
obj.bar('haha')
执行效果:
$ python try-decorator.py
foo => msg = 'hehe'
bar => msg = 'haha'