在 Python 中,将整数(int)转换为字符串(str)非常简单,主要使用内置的 str() 函数,以下是详细的说明和示例:
方法 1:使用 str() 函数(最常用)
str() 是 Python 内置的函数,可以直接将整数转换为字符串。
示例代码
num = 123 str_num = str(num) print(str_num) # 输出: '123' print(type(str_num)) # 输出: <class 'str'>
方法 2:使用 f-string(格式化字符串,Python 3.6+)
通过 f-string 可以更灵活地格式化数字为字符串,同时支持添加前缀或后缀。
示例代码
num = 456
str_num = f"{num}"
print(str_num) # 输出: '456'
# 带前缀或后缀
str_num_with_prefix = f"Number: {num}"
print(str_num_with_prefix) # 输出: 'Number: 456'
方法 3:使用 .format() 方法
通过字符串的 format() 方法也可以实现转换。
示例代码
num = 789
str_num = "{}".format(num)
print(str_num) # 输出: '789'
# 带格式化
str_num_formatted = "Value: {:05d}".format(num) # 补零到5位
print(str_num_formatted) # 输出: '00789'
方法 4:使用 格式化(旧式,不推荐新代码使用)
这是 Python 2 时代遗留的格式化方式,功能与 .format() 类似,但可读性较差。
示例代码
num = 100 str_num = "%d" % num print(str_num) # 输出: '100'
注意事项
- 负数转换:
str()会正确处理负数。num = -42 print(str(num)) # 输出: '-42'
- 非十进制转换:如果需要将整数转为其他进制(如二进制、十六进制),需先使用
bin()、hex()等,再转为字符串。num = 255 hex_str = hex(num) # 输出: '0xff' bin_str = bin(num) # 输出: '0b11111111' print(str(hex_str)) # 输出: '0xff'
| 方法 | 示例 | 适用场景 |
|---|---|---|
str() |
str(123) |
最简单直接,推荐日常使用 |
| f-string | f"{123}" |
需要格式化或嵌入其他文本时 |
.format() |
"{}".format(123) |
复杂格式化需求 |
| 格式化 | "%d" % 123 |
兼容旧代码(不推荐新项目用) |
推荐优先使用 str() 或 f-string,代码简洁且易读。
