关于Pythons str类构造函数的默认参数

时间:2016-01-04 13:01:42

标签: python string python-3.x

Python3.5中的Python str类构造函数:

class str(object='') 
class str(object=b'', encoding='utf-8', errors='strict') 

这是否意味着默认编码为utf-8

2 个答案:

答案 0 :(得分:2)

是的,这意味着编码的默认值是' utf-8'。

您也可以查看:https://docs.python.org/3/library/stdtypes.html#str.encode

答案 1 :(得分:1)

它是str {{}}}对象的附加初始值设定项(由前缀b'text'表示。

它的默认值是utf-8,因为Python 3.5的默认编码是utf-8(它摇滚)。

它只是意味着如果传入bytes个对象,则默认使用编码utf-8 errors=strict表示编码错误会引发UnicodeError。它本质上是对is used when an object of type bytes (or byte-like) is supplied的调用。

如果您愿意,您当然可以更改这些内容并使用bytes.decode()(例如latin-1another encoding