将 <class 'bytes'> 转换为“0”和“1”的字符串 python

Convert <class 'bytes'> to string of '0' and '1' python

如何转换 class 'bytes'

的对象

b'\xd2\x9f\r'

到“0”和“1”的字符串

001011010110000010010

使用下面的代码

import sys
bin(int.from_bytes(b'\xd2\x9f\r', byteorder=sys.byteorder))

输出 0b11011001111111010010

在 ESP32 上的 Micropython 中是结果:

>>> bin(int.from_bytes(b'-\x05\x05\xff',byteorder=sys.byteorder))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: function doesn't take keyword arguments

用默认 0 替换 byteorder 参数完成了工作:

>>> bin(int.from_bytes(b'-\x05\x05\xff',0))
'0b101101000001010000010111111111'