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

Reply via email to