errors参数在内置的python bytes()类中做了什么?

时间:2018-05-10 13:23:52

标签: python-3.x

文档似乎没有描述它的作用。 https://docs.python.org/3/library/stdtypes.html#bytes

我假设它在其他函数中使用的典型模式(例如bytesarray),但我无法弄清楚它做了什么,也不知道谷歌的用途。

1 个答案:

答案 0 :(得分:2)

bytes()的说明以:

开头
  

首先,字节文字的语法与字符串文字的语法大致相同

查看str()

  

如果给出 encoding errors 中的至少一个, object 应该是类似字节的对象(例如bytesbytearray)。在这种情况下,如果 object bytes(或bytearray)对象,则str(bytes, encoding, errors)相当于bytes.decode(encoding, errors)

bytes.decode()说:

  可以给出

错误来设置不同的错误处理方案。 错误的默认值为'strict',这意味着编码错误会引发UnicodeError。其他可能的值包括'ignore''replace'以及通过codecs.register_error()注册的任何其他名称,请参阅错误处理程序部分。

因此errors的目的是定义如何处理数据中的编码错误。上述Error Handlers部分包含更深入的信息。