'utf8'编解码器在python中解码('utf-8')时无法解码字节0xc3

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了'utf8'编解码器在python中解码('utf-8')时无法解码字节0xc3相关的知识,希望对你有一定的参考价值。

今天我的剧本中出现了奇怪的错误:

'utf8' codec can't decode byte 0xc3 in position 21: invalid continuation byte

我正在从socket sock.recv读取数据,结果是buff.decode('utf-8'),其中buff是返回的数据。

但是今天我发现了很多“独角兽”,其中一个角色返回“▒”< - 这就是将解码utf-8变为异常的原因。是否有一些预处理可以删除或替换这样一个奇怪的角色?

答案

.decode() 的第二个参数名为errors。您可以将其设置为'ignore'以忽略所有非utf8字符,或将其设置为'replace'以使用菱形问号( )替换它们。

buff.decode('utf-8', 'ignore')

以上是关于'utf8'编解码器在python中解码('utf-8')时无法解码字节0xc3的主要内容,如果未能解决你的问题,请参考以下文章

UnicodeDecodeError:'utf-8'编解码器无法解码位置1中的字节0x8b:无效的起始字节

Python Solve UnicodeEncodeError 'gbk' / 'ascii' / 'utf8' codec can't enc

UnicodeDecodeError:'charmap'编解码器无法解码位置Y中的字节X:字符映射到

Python pandas to_excel'utf8'编解码器无法解码字节

SyntaxError :( unicode错误)'unicodeescape'编解码器无法解码位置2-3的字节:截断 UXXXXXXXX转义[重复]

'utf-8'编解码器无法解码位置1中的字节0xf4:无效的连续字节