Rozważmy następujący kod:Weakref i __slots__
from weakref import ref
class Klass(object):
# __slots__ = ['foo']
def __init__(self):
self.foo = 'bar'
k = Klass()
r = ref(k)
to działa, ale kiedy odkomentuj __slots__
zrywa z TypeError: "cannot create weak reference to 'Klass' object"
pod Pythona 2.6.
Proszę, czy ktoś wie, czy jest to nieodłączne ograniczenie Pythona i __slots__
, czy jest to błąd? Jak obejść go?