是的,当遇到不能解码的字节序列时,默认情况下 python 使用一种编码错误处理方法,即替换为 U+FFFD 字符(也称为“替代字符”)。因此,解码结果字符串中会出现 U+FFFD 字符,表示在原始字节序列中不能解码的部分。
如果需要,还可以通过将 errors 参数设置为 "strict" 来抛出 UnicodeDecodeError 异常。
例:
try:
result = bytes.decode("utf-8", errors="strict")
except UnicodeDecodeError as e:
# handle the error