我正在用 Python 3.4.1 编写一个程序,它使用 PySerial 来测试一些硬件。
字节从串行端口一次读取一个,然后附加到列表中。当列表达到一定大小时,它被发送进行处理。 根据传入的数据,有时必须在列表填满之前处理数据,因此需要逐字节操作。
然后列表返回为:
[b'F', b'o', b'o']
对于部分测试脚本,我需要能够将其转换为字符串,这样我就可以打印:
Foo
我的解决方案是:
b''.join([b'F', b'o', b'o']).decode("ascii")
但就是感觉不对。对此有更好的方法吗?
最佳答案
IMO,这稍微更具可读性,但如果我在审查中看到您的代码,我不会提示。在 Python 2.7 中测试:
>>> bytearray([b'F', b'o', b'o']).decode('ascii')
u'Foo'
关于python - 在 Python 3 中将字节列表转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30845669/