我想在 python 中编写一个上下文管理器,临时禁用全局功能。这样的事情可以通用吗?以下是所需行为的示例:
#in module x
def disable_me(): print "do stuff"
#in module y
import x
def run_me():
print "run_me"
x.disable_me()
#in module z
import x
import y
with disable_function(x.disable_me):
y.run_me()
#desired output: run_me
我知道,原则上,我可以暂时分配给lambda *args, **kwargs: None
,x.disable_me
但我不清楚上下文管理器是否有足够的信息来实际执行此操作。