Python str函数

本文详细介绍了Python内置函数str的功能和用法,包括如何将不同类型的参数转换为字符串,以及在实际编程中的应用示例。

描述

str函数是Python的内置函数,它将参数转换成字符串类型,即人适合阅读的形式。

语法

str(object)
名称说明备注
object待被转换成字符串的参数可省略的参数

返回值:返回object的字符串形式

使用示例

1. 无参调用

当str()函数的参数都省略时,函数返回空字符串。这种情况常用来创建空字符串或者初始化字符串变量。

>>> str()
''

2. 不省略参数

str函数将整数、浮点数、列表、元组、字典和集合转换为字符串类型

>>> str(-23) #整数转换为字符串
'-23'

>>> str(1.3e2) #浮点数转换为字符串
'130.0'

>>> a_list = [12, '-23.1', 'Python']
>>> str(a_list)  #列表转换为字符串
"[12, '-23.1', 'Python']"
>>> str(a_list)[0]
'['

>>> a_tuple = (23, '9we', -8.5)
>>> str(a_tuple)  #元组转换为字符串
"(23, '9we', -8.5)"

>>> a_dictionary = {'Huawei':'China', 'Apple':'USA'}
>>> str(a_dictionary)  #字典转换为字符串
"{'Huawei': 'China', 'Apple': 'USA'}"
>>> str(a_dictionary)[10]
' '

>>> a_set = {'China', 'Japan', 'UK'}
>>> str(a_set)  #集合转换为字符串
"{'Japan', 'UK', 'China'}"

⚠️注意:将列表、元组、字典和集合转换为字符串后,包裹列表、元组、字典和集合的'['、']'、'('、')'、'{'、'}',以及列表、元组、字典和集合中的元素分隔符',',和字典中键值对':'也都转换成了字符串,是转换后字符串的一部分。

注意事项

str()函数可以将字符串类型转换为字符串,这一过程不会有任何报错,但是会产生额外的时空消耗。

>>> str('asdf')
'asdf'

本质意义

### str函数的作用 Python 中的 `str()` 函数是一个内置函数,用于将其他数据类型转换为字符串类型。该函数能够处理多种数据类型,包括整数、浮点数、布尔值、列表、元组、字典和集合等,并将其转换为对应的字符串表示形式。这种转换在字符串拼接、格式化输出等场景中非常有用,尤其是在需要将非字符串类型嵌入到字符串中的情况下。 例如,当需要将一个数字与字符串进行拼接时,可以直接使用 `str()` 函数将其转换为字符串类型,从而避免类型不匹配导致的错误。 ```python number = 3.14 result = "圆周率是:" + str(number) print(result) # 输出: 圆周率是:3.14 ``` ### str函数的基本用法 `str()` 函数的基本语法如下: ```python str(object) ``` 其中 `object` 可以是任意数据类型,如整数、浮点数、列表、元组、字典、集合等。如果未提供参数,则返回空字符串。 #### 将数字转换为字符串 `str()` 可以将整数和浮点数转换为对应的字符串表示形式。 ```python print(str(123)) # 输出: '123' print(str(-23)) # 输出: '-23' print(str(1.3e2)) # 输出: '130.0' ``` #### 将布尔值转换为字符串 布尔值 `True` 和 `False` 也可以通过 `str()` 转换为字符串 `'True'` 和 `'False'`。 ```python print(str(True)) # 输出: 'True' print(str(False)) # 输出: 'False' ``` #### 将容器类型转换为字符串 `str()` 函数可以将列表、元组、字典和集合等容器类型转换为它们的字符串表示形式,其中包含所有元素的字符串形式。 ```python a_list = [12, '-23.1', 'Python'] print(str(a_list)) # 输出: "[12, '-23.1', 'Python']" a_tuple = (23, '9we', -8.5) print(str(a_tuple)) # 输出: "(23, '9we', -8.5)" a_dictionary = {'Huawei': 'China', 'Apple': 'USA'} print(str(a_dictionary)) # 输出: "{'Huawei': 'China', 'Apple': 'USA'}" a_set = {'China', 'Japan', 'UK'} print(str(a_set)) # 输出: "{'Japan', 'UK', 'China'}" ``` ### str函数的高级用法 除了基本的数据类型转换外,`str()` 函数还可以用于自定义对象的字符串表示。如果类中定义了 `__str__()` 方法,那么在使用 `str()` 转换该类的实例时,将返回 `__str__()` 方法中定义的字符串。 ```python class Person: def __init__(self, name, age): self.name = name self.age = age def __str__(self): return f"Person(name={self.name}, age={self.age})" p = Person("Alice", 30) print(str(p)) # 输出: Person(name=Alice, age=30) ``` ### 注意事项 - `str()` 函数不会修改原始对象,而是返回一个新的字符串对象。 - 对于复杂的数据结构(如嵌套列表或字典),`str()` 返回的字符串是它们的“可读性”表示,而不是 JSON 格式。 - 如果尝试将不可转换的对象传递给 `str()`,可能会引发 `TypeError` 异常。 --- ###
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值