当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python str()用法及代码示例


str() 函数返回给定对象的字符串版本。

用法:

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

参数:

str() 方法采用三个参数:

  • object- 这object要返回其字符串表示形式。如果未提供,则返回空字符串
  • encoding- 给定对象的编码。的默认值UTF-8未提供时。
  • errors- 解码失败时的响应。默认为'strict'.

errors 有六种类型:

  • strict- 引发 a 的默认响应UnicodeDecodeError失败异常
  • ignore- 从结果中忽略不可编码的 Unicode
  • replace- 将不可编码的 Unicode 替换为问号
  • xmlcharrefreplace- 插入 XML 字符引用而不是不可编码的 Unicode
  • backslashreplace- 插入一个\uNNNNespace 序列而不是不可编码的 Unicode
  • namereplace- 插入一个\N{...}转义序列而不是不可编码的 Unicode

返回:

str() 方法返回一个字符串,它被认为是给定对象的非正式或可很好打印的表示形式。

示例 1:转换为字符串

如果编码错误未提供参数,str()内部调用__str__()对象的方法。

如果找不到 __str__() 方法,则改为调用 repr(obj)

result = str(10)
print(result)

输出

10

注意:结果变量将包含一个字符串。

也可以在 Python 控制台上尝试这些命令。

>>> str('Adam')
>>> str(b'Python!')

示例 2:str() 如何用于字节?

如果encodingerrors提供参数,第一个参数,对象, 应该是bytes-like-object(bytes或者bytearray)。

如果对象是字节或字节数组,str()内部调用bytes.decode(encoding, errors).

否则,它会在调用decode() 方法之前获取缓冲区中的字节对象。

# bytes
b = bytes('pythön', encoding='utf-8')

print(str(b, encoding='ascii', errors='ignore'))

输出

pythn

在这里,字符'ö' 不能被 ASCII 解码。因此,它应该给出一个错误。但是,我们设置了 errors ='ignore' 。因此,Python 会忽略 str() 无法解码的字符。

相关用法


注:本文由纯净天空筛选整理自 Python str()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。