📅  最后修改于: 2020-09-20 04:35:16             🧑  作者: Mango
str()
的语法为:
str(object, encoding='utf-8', errors='strict')
str()
方法采用三个参数:
object
。如果未提供,则返回空字符串 'strict'
。 errors
有六种类型:
UnicodeDecodeError
异常\uNNNN
espace序列而不是无法编码的Unicode \N{...}
转义序列,而不是无法编码的Unicode str()
方法返回一个字符串 ,该字符串被视为给定对象的非正式或可打印的表示形式。
如果未提供encoding和errors参数,则str()
内部调用对象的__str__()
方法。
如果找不到__str__()
方法,则调用repr(obj)。
result = str(10)
print(result)
输出
10
注意:结果变量将包含一个字符串。
也可以在Python控制台上尝试这些命令。
>>> str('Adam')
>>> str(b'Python!')
如果提供了encoding
和errors
参数,则第一个参数object应当为类似字节的对象 (bytes或bytearray)。
如果对象是bytes或bytearray ,则str()
内部调用bytes.decode(encoding, errors)
。
否则,它将在调用decode()
方法之前获取缓冲区中的bytes对象。
# bytes
b = bytes('pythön', encoding='utf-8')
print(str(b, encoding='ascii', errors='ignore'))
输出
pythn
此处,字符'ö'
不能用ASCII解码。因此,它应该给出一个错误。但是,我们将errors ='ignore'
设置为errors ='ignore'
。因此, Python忽略了str()
无法解码的字符。