草庐IT

ContextDecorator

全部标签

python - 在 Python 中充当装饰器和上下文管理器的函数?

这可能有点太过分了,但主要是出于好奇..是否有可能有一个可调用的对象(函数/类)同时充当上下文管理器和装饰器:defxxx(*args,**kw):#orasaclass@xxx(foo,bar)defim_decorated(a,b):print('dothestuff')withxxx(foo,bar):print('dothestuff') 最佳答案 从Python3.2开始,对此的支持甚至包含在标准库中。派生自类contextlib.ContextDecorator可以轻松编写可以用作装饰器或上下文管理器的类。这个功能可以很

python - 在 Python 中充当装饰器和上下文管理器的函数?

这可能有点太过分了,但主要是出于好奇..是否有可能有一个可调用的对象(函数/类)同时充当上下文管理器和装饰器:defxxx(*args,**kw):#orasaclass@xxx(foo,bar)defim_decorated(a,b):print('dothestuff')withxxx(foo,bar):print('dothestuff') 最佳答案 从Python3.2开始,对此的支持甚至包含在标准库中。派生自类contextlib.ContextDecorator可以轻松编写可以用作装饰器或上下文管理器的类。这个功能可以很