【发布时间】:2011-08-30 09:24:23
【问题描述】:
我的设计如下:
-
__main__引用a -
a引用b -
b引用a -
a被创建,然后从__main__处理掉
因此a 和b 具有循环引用。但是,在 del a 上,我更愿意同时处理 a 和 b。
我在很多地方看到使用上下文管理器的建议,特别是 with 语句而不是 __del__()。但是,我看到的所有 with 示例都在本地范围内开始和结束(例如,某个方法)
这可以用with优雅地执行吗?
有什么选择?
【问题讨论】:
标签: python with-statement circular-reference contextmanager