Hello, I have a Bloom filter class and want to (partially) serialize instances using hex() or oct(). Instances are mutable, so I can't inherit from long. I thought I'd found the answer when I came across __index__, https://docs.python.org/2/reference/datamodel.html#object.__index__. But it doesn't seem to work as I expected it to.
>>> class MyClass(object): def __init__(self): self.val = 7 def __index__(self): return self.val >>> x = MyClass() >>> oct(x) Traceback (most recent call last): File "<pyshell#76>", line 1, in <module> oct(x) TypeError: oct() argument can't be converted to oct >>> oct(x.__index__()) '07' >>> Can someone please explain why my thinking is wrong on this? TIA. Duncan -- https://mail.python.org/mailman/listinfo/python-list