我正在创建要串行发送到设备的数据包。
我希望保留键入时的格式,而不将其转换为unicode字符。

my_thing = b'\xb4\x75'
print(my_thing)
(Actual Output)>>> b'\xb4u'
(Wanted Output)>>> b'\xb4\x75'

可能是一个简单的问题,但经过搜索和其他问题,我找不到我在寻找什么。提前谢谢!

最佳答案

假设这只是一个表示/打印问题,我建议使用一个自定义打印函数:

my_thing = b'\xb4\x75'

def print_bytes_as_hex(b):
    print("b'{}'".format(''.join(r'\x{:02x}'.format(i) for i in b)))

print_bytes_as_hex(my_thing)

如果你复制/评估这个函数的输出,它应该==它的输入。
注意:它生成的字符串不是输入的==

07-28 12:06