Python str() 函数

Python3 内置函数 Python3 内置函数


str() 是 Python 中最常用的内置函数之一,用于将其他类型的数据转换为字符串类型。

字符串是 Python 中最常用的数据类型之一,str() 函数可以帮助我们将数字、列表、元组等转换为字符串,方便输出和拼接。

单词释义strstring(字符串)的缩写。


基本语法与参数

str() 是一个内置函数,可以直接调用。

语法格式

str(object)
str(object, encoding)
str(object, errors)

参数说明

  • 参数 object
    • 类型: 任意对象
    • 描述: 要转换为字符串的对象。
  • 参数 encoding(可选):
    • 类型: 字符串
    • 描述: 编码格式(如 'utf-8', 'gbk')。
  • 参数 errors(可选):
    • 类型: 字符串
    • 描述: 错误处理方式,默认为 'strict'(抛出异常)。其他选项:'ignore', 'replace'。

函数说明

  • 返回值: 返回字符串对象。
  • 默认行为: 不带参数返回空字符串 ""

实例

让我们通过例子掌握 str() 的用法。

示例 1:基础用法 - 转换各种类型

实例

# 整数转字符串
print(str(123))           # 输出: 123
print(type(str(123)))     # 输出: <class 'str'>

# 浮点数转字符串
print(str(3.14159))       # 输出: 3.14159

# 布尔值转字符串
print(str(True))          # 输出: True
print(str(False))         # 输出: False

# 列表转字符串
print(str([1, 2, 3]))     # 输出: [1, 2, 3]

# 元组转字符串
print(str((1, 2, 3)))     # 输出: (1, 2, 3)

# 字典转字符串
print(str({"name": "Tom", "age": 20}))  # 输出: {'name': 'Tom', 'age': 20}

# 空参数
print(str())              # 输出: (空行)

运行结果预期:

123
<class 'str'>
3.14159
True
False
[1, 2, 3]
(1, 2, 3)
{'name': 'Tom', 'age': 20}

代码解析:

  1. 数字转换为字符串时,保持原来的数字表示。
  2. 布尔值转换为字符串时,首字母大写。
  3. 列表、元组、字典等容器类型会转换为它们的字符串表示。

示例 2:字符串拼接

实例

name = "Tom"
age = 20
height = 1.75

# 使用 str() 转换后拼接
info = name + " " + str(age) + "岁 " + str(height) + "米"
print(info)  # 输出: Tom 20岁 1.75米

# 使用 f-string(推荐方式)
info = f"{name} {age}岁 {height}米"
print(info)  # 输出: Tom 20岁 1.75米

# 格式化输出
print("姓名: " + str(name))  # 输出: 姓名: Tom

运行结果预期:

Tom 20岁 1.75米
Tom 20岁 1.75米
姓名: Tom

代码解析:

  • str() 转换后可以使用加号进行字符串拼接。
  • 现代 Python 推荐使用 f-string 进行字符串格式化,更简洁易读。

示例 3:处理字节和编码

实例

# 字节串转字符串(需要指定编码)
data = b"Hello"
s = str(data, encoding='utf-8')
print(s)  # 输出: Hello

# 处理编码错误
data = b"Hello\x80"
s = str(data, encoding='utf-8', errors='ignore')
print(s)  # 输出: Hello(忽略非法字节)

s = str(data, encoding='utf-8', errors='replace')
print(s)  # 输出: Hello(用替换符代替)

运行结果预期:

Hello
Hello
Hello

这个例子展示了 str() 在处理字节和编码时的用法。


Python3 内置函数 Python3 内置函数