Terry J. Reedy added the comment:
More data:
class myit(list):
def __bytes__(self): return b'hello'
print (bytes(b'a'))
class myit(list):
def __bytes__(self): return b'hello'
print (bytearray (myit([1,2,3])))
# bytearray(b'a')
# bytearray(b'\x01\x02\x03')
class by:
def __bytes__(self): return b'hello'
# TypeError: 'by' object is not iterable
(Error message is incomplete.)
So bytearray *always* treats objects as specified in its library entry and
never calls __bytes__, making its value sometimes unequal as a sequence of
bytes from bytes with the same input.
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue17309>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com