Как создать слабую ссылку на объект в Python? - PullRequest
6 голосов
/ 09 сентября 2008

Как создать слабую ссылку на объект в Python?

1 Ответ

11 голосов
/ 09 сентября 2008
>>> import weakref
>>> class Object:
...     pass
...
>>> o = Object()
>>> r = weakref.ref(o)
>>> # if the reference is still active, r() will be o, otherwise None
>>> do_something_with_o(r()) 

См. Документ модуля wearkref для получения более подробной информации. Вы также можете использовать weakref.proxy для создания объекта, который прокси o. Выдает ReferenceError, если используется, когда на референта больше нет ссылки.

...