我想要这种行为:
with Obj(param=1):
with Obj(param=2):
print(...)
使用单个对象:
with UnifyingObj():
print(...)
我想知道如何安全地实现UnifyingObj
类
这必须是一个单独的类。我试着这样做:
class _DualWith:
def __init__(self):
self._with1 = Obj(param=1)
self._with2 = Obj(param=2)
def __enter__(self):
self._with1.__enter__()
self._with2.__enter__()
def __exit__(self, *args, **kwargs):
self._with2.__exit__(*args, **kwargs)
self._with1.__exit__(*args, **kwargs)
但我不认为这是完全安全的
你需要在一个单独的类中包装这个行为吗?也许你可以这样做?你知道吗
相关问题 更多 >
编程相关推荐