将ser.read输出转换为列表中的有效元素 - Python

时间:2017-04-03 16:08:52

标签: python serial-port pyserial

我需要从串口读取数据并将其插入位置1到16的列表中。

rxbuf[1:16] = ser.read(16) 

虽然我收到如下错误:

TypeError: 'bytes' object does not support item assignment

如果我打印串口的输出,

rxbuf=ser.read(16)

输出如下:

b'\xf2\x97\x00\x00\x8er\x9a\xc0\x14\xff\xff|:F\x18\x00'

有没有办法转换上面的内容,并把它放在列表中? 我需要的是rxbuf[1] = 0xF2, rxbuf[2] = 0x97等等

1 个答案:

答案 0 :(得分:0)

试试这个

RXBUF = ser.read(16) rxbuf = ser.read(16).split(" \")---因为你的回答是由' \'正斜线 它应该像这样打印.... rxbuf [1] = 0xF2 rxbuf [2] = 0x97

https://www.mkyong.com/python/python-how-to-split-a-string/