str()用于将数据转为字符串,如str(123)得”123″;拼接需先转换类型,如”今年”+str(25)+”岁”;自定义类可重写__str__控制输出;常用于打印、列表转换和格式化。

在 python 中,str() 函数用于将各种数据类型转换为字符串类型。这个函数非常常用,尤其是在需要将数字、布尔值或其他对象输出到屏幕或写入文件时。
基本用法
str() 接收一个参数,并返回该参数的字符串表示形式。
例如:
- str(123) 返回 “123”
 - str(3.14) 返回 “3.14”
 - str(True) 返回 “True”
 - str(None) 返回 “None”
 
这些原本不是字符串的数据,在经过 str() 处理后都变成了可读的字符串形式,便于拼接、打印或保存。
与字符串拼接的结合使用
Python 不允许直接将字符串与非字符串类型拼接,否则会报错。
立即学习“Python免费学习笔记(深入)”;
比如下面这行代码会出错:
name = "今年" + 25 + "岁"
正确做法是使用 str() 转换数字:
name = "今年" + str(25) + "岁" # 结果:"今年25岁"
这样就能避免 TypeError,实现不同类型数据的组合输出。
自定义对象的字符串转换
对于自定义类的实例,str() 会尝试调用对象的 __str__() 方法。如果未定义,则退而使用 __repr__()。
示例:
 class Person:     def __init__(self, name):         self.name = name     def __str__(self):         return "我是" + self.name <p>p = Person("小明") print(str(p))  # 输出:我是小明</p>
通过重写 __str__ 方法,可以控制对象转为字符串时的显示内容,提升可读性。
常见应用场景
- 打印变量时确保类型兼容:print(“结果是:” + str(value))
 - 将列表中的数字统一转为字符串:[str(x) for x in [1, 2, 3]]
 - 格式化输出:”年龄:” + str(age) 或 f”年龄:{str(age)}”
 
基本上就这些。str() 看似简单,但在日常编码中不可或缺,掌握它有助于更灵活地处理数据类型转换问题。不复杂但容易忽略细节。