For Python 2.6 and later if you are dealing with bytes then a bytearray
is the most obvious choice:
>>> str(bytearray([17, 24, 121, 1, 12, 222, 34, 76]))
'\x11\x18y\x01\x0c\xde"L'
To me this is even more direct than Alex Martelli's answer - still no string manipulation or len
call but now you don't even need to import anything!