2016-10-25 109 views
0

我有一些串行協議,它使用消息的第一個字節來傳送收件人的地址。在Python 2,它的工作,但在3我得到的錯誤:Python 3 bytearray將不接受字符串

serial.write(bytes(chr(addr | 0x80)) + data) 
TypeError: string argument without an encoding 

data是這裏的bytearray對象。我怎樣才能簡單地用addr | 0x80的結果作爲前綴?

回答

0

好,發現在Python 2工作的解決方案& 3:

serial.write(bytearray([addr | 0x80]) + data)