← index #3158Issue #567
Off-topic · high · value 1.193
QUERY · ISSUE

py: bytes() won't call obj.__bytes__()

openby ThunderEXopened 2017-06-21updated 2024-08-28
docs

I defined a class with bytes method. Calling bytes() on its instance should redirect to its bytes method, but it doesn't.

Can this be fixed?

CANDIDATE · ISSUE

bytes builtin doesn't accept encoding kwarg

closedby lurchopened 2014-05-05updated 2020-03-23

Dunno if this is a known problem or has been reported before, but searching for 'bytes' obviously throws up a hell of a lot of matches! ;)

On CPython, I can do both bytes('hello', 'ascii') and bytes('hello', encoding='ascii').
On uPy, the former works, but the latter fails with
TypeError: wrong number of arguments

I also just spotted that on CPython both str(b'hello', 'ascii') and str(b'hello', encoding='ascii') produce the same result, but on uPy the second version returns something quite different. (let me know if I should split that off into a separate issue)

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied