字节字符串如何很好地存储? -不可JSON序列化-

时间:2019-03-13 12:25:40

标签: python json encoding

对于一个项目,我正在使用带有简单python module的传感器收集多个红外命令。

我收到如下字节字符串:

commando1= b'7g4770CQfwCTVT9bQDAzVEBMagGRMDhUOwBjATsAXVBAAJt17QMMV3AAH6qJABawTVJ0UiIRETERQRIkIlRFERZ4eXkAAAAAAAAAAAAAAAA5'
commando2= b'\x04O\xdb\x07L\x9c\xd5\x1f\xccT=[\x9103T\x91Lj\x01\xdd0\x97y\xcc\x08W\x0b\x91\x00\xf3\xac\x01""pt\x11\x11]B!cmo\x12pd_u\x97u\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96'
commando3= b"\xdb\x06}\xad5P\x13\x835L\xf3N50\xd3T<L'\x02\x810{S5\x00`\x015\x00xP5\x00\xecZ\x87\x00\x04Ne\x00\x9b\x9cO\x02\x81\x97\xac\xa0R\xa0\x08\x01\x013E`\x07\x00p\x08\x01\x013E`\x07\x00p\x08\x01\x013E`\x07\x00p\x08\x88"
commando4= b'\x924"<"\x0b\x10\x14\x00L\xdfN\xdf0\x00R\x00LJR\\@\x10c\x01\x01M\x01\x00\x111O\x01 \x03Pb\x01\x10L0\x00RLN\x00NRL0R0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb'

并希望将它们存储在JSON中以在那里获得一些订单:

  

TypeError:b'7g4770CQfwCTVT9bQDAzVEBMagGRMDhUOwBjATsAXVBAAJt17QMMV3AAH6qJABawTVJ0UiIRETERQRIkIlRFERZ4eXkAAAAAAAAAAAAAAAA5'不是JSON可序列化的

我已经尝试对这一系列字符进行编码/解码,但这不起作用。在这种情况下,我认为这样做是不正确的。

1 个答案:

答案 0 :(得分:1)

字节不能进行JSON序列化,但是由于您的输入看起来都在ASCII范围内,因此您可以简单地使用ascii编码将其解码为字符串,以便可以进行JSON序列化:

commando.decode('ascii')