Python将字符串转换为字节而不更改值

问题描述

我有一个字符串,例如:

a = '031000060002043DCCCCCD213B'

我想得到一个像这样的字节

b'\x03\x10\x00\x06\x00\x02\x04\x3D\xCC\xCC\xCD\x213B'

(我不想拆分的最后四个字符)

但是像字符串'3d''21'总是由于ascii一直转换为b'='b'!',我不想要什么,怎么解决呢? / p>

提前谢谢!

解决方法

bytes对象为此提供了一种方便的方法,.fromhex,因此您可以使用:

>>> bytes.fromhex(a[:-4]) + a[-4:].encode()
b'\x03\x10\x00\x06\x00\x02\x04=\xcc\xcc\xcd213B'