Encoding 选择合适的编码格式

Encoding 选择合适的编码格式,encoding,utf-8,character-encoding,format,ascii,Encoding,Utf 8,Character Encoding,Format,Ascii,我所处的情况是,我正在从arduino向python程序读取数据。 我正在使用: ser_bytes = ser.readline() ser_bytes = ser_bytes.decode("utf-8") 如您所见,我使用的是utf-8格式 但是,我的程序因UnicodeDecodeError而崩溃 让我们看一个错误,例如: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfe in position 0:

我所处的情况是,我正在从arduino向python程序读取数据。 我正在使用:

ser_bytes = ser.readline()
ser_bytes = ser_bytes.decode("utf-8")
如您所见,我使用的是
utf-8
格式

但是,我的程序因UnicodeDecodeError而崩溃

让我们看一个错误,例如:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfe in position 0: invalid start byte
0xfe
不是我唯一无法解析的字符。 到目前为止,我已经收到了
0xfe、0xff、0xa9、0xce


这些字符是什么,我应该使用什么格式来正确接收它们,因为
utf-8
不足以完成此任务?

它们是重音字符,在arduino中,重音字符可以使用2个字符而不是1个字符进行编码。请在尝试解码之前共享
SERU字节
。此外,请详细说明您的建议。字节序列
0xfe,0xff
看起来像utf-16。如果第一个字节是FE FF,则编码是
utf16
(大端字节也由FE FF表示),而不是
utf8
。但U+A9CE是一个未定义的代码点。可能是arduino发射的信号有问题。