Python str() 函数用法

2023-09-17 22:29:13

str()构造函数方法返回具有指定值的 str 类的对象。

语法:

str(object, encoding, errors)

参数:

  1. object:(可选)整数、浮点数、布尔值或需要将其值转换为字符串的任何其他对象。
  2. 编码:(可选)指定对象的编码。默认值为 UTF-8。
  3. 错误:(可选)解码失败时的响应。默认为"严格">

返回值:

返回一个字符串。

下面的示例将整数转换为字符串。

numstr = str(10)
print(numstr)
print(type(numstr))

输出:

10
<class 'str'>

下面将不同的值转换为字符串。

fstr = str(10.5)
bstr = str(True)
cstr = str(3+4j)
print(fstr)
print(bstr)
print(cstr)

输出:

'10.5'
'True'
'(3+4j)'

如果指定了编码或错误,则对象应为bytesbytesarray类型。 如果指定的对象是字节类型,则str(bytes, encoding, errors)等效于 bytes.decode(encoding, errors) 。 在不进行编码的情况下传递字节将失败,只会返回字符串。

print(str(b'Hello'))

输出:

"b'hello'"

下面将字节转换为字符串。

b = bytes('Hellö Wörld', encoding='utf-8')
print(str(b, encoding='iso-8859-1'))
print(str(b, encoding='ascii', errors='ignore')) # ignore error

输出:

Hellö Wörld
Hell Wrld

在上面的示例中,str(b, encoding='iso-8859-1') 以 iso-8859-1 编码将ö转换为ö。但是,它会为 ASCII 编码抛出错误,因为我们指定了 errors=ignore ,它会忽略错误并通过忽略 ö 返回一个字符串'Hell Wrld'