首页 > 解决方案 > Python将字符串转换为字节而不更改值

问题描述

我有一个字符串,例如:

a = '031000060002043DCCCCCD213B'

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

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

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

但是像字符串'3d''21'由于ascii而总是被转换为b'='and b'!',我不想要什么,怎么解决?

提前致谢!!

标签: pythonpython-3.xstringbyte

解决方案


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

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

推荐阅读