在 Python 中,将整数(int)转换为字符串(str)最常用的方法是使用内置的 str() 函数,以下是详细的说明和示例:

(图片来源网络,侵删)
使用 str() 函数(最常用)
这是最直接、最通用的方法,适用于所有整数类型。
示例代码
num = 123 str_num = str(num) print(str_num) # 输出: '123' print(type(str_num)) # 输出: <class 'str'>
处理负数
num = -456 str_num = str(num) print(str_num) # 输出: '-456'
处理大整数
Python 的 int 可以表示任意大的整数,str() 也能正确处理:
big_num = 10**100 str_big_num = str(big_num) print(str_big_num) # 输出: '10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
使用 f-string(格式化字符串,Python 3.6+)
如果需要在转换时嵌入其他文本,f-string 是更灵活的选择。
示例代码
num = 789
str_num = f"{num}"
print(str_num) # 输出: '789'
# 嵌入文本
result = f"数字是: {num}"
print(result) # 输出: '数字是: 789'
使用 .format() 方法
这是 Python 3.5 及以下版本中常用的格式化方法,与 f-string 类似。

(图片来源网络,侵删)
示例代码
num = 321
str_num = "{}".format(num)
print(str_num) # 输出: '321'
# 嵌入文本
result = "数字是: {}".format(num)
print(result) # 输出: '数字是: 321'
使用 格式化(旧式方法)
在 Python 2 和早期 Python 3 中常用,但现已不推荐(推荐使用 f-string 或 str())。
示例代码
num = 654 str_num = "%d" % num print(str_num) # 输出: '654'
特殊进制转换
如果需要将整数转换为其他进制(如二进制、十六进制)的字符串,可以使用内置函数:
bin():二进制(以'0b'开头)oct():八进制(以'0o'开头)hex():十六进制(以'0x'开头)
示例代码
num = 255 # 二进制 bin_str = bin(num) print(bin_str) # 输出: '0b11111111' # 八进制 oct_str = oct(num) print(oct_str) # 输出: '0o377' # 十六进制 hex_str = hex(num) print(hex_str) # 输出: '0xff' # 去掉前缀 print(bin_str[2:]) # 输出: '11111111'
| 方法 | 示例 | 适用场景 |
|---|---|---|
str() |
str(123) |
最通用,直接转换 |
| f-string | f"{123}" |
Python 3.6+,需要格式化时 |
.format() |
"{}".format(123) |
兼容旧版 Python,格式化文本 |
| 格式化 | "%d" % 123 |
旧式方法,不推荐 |
bin()/oct()/hex() |
hex(255) |
特定进制转换 |
推荐优先使用 str() 或 f-string,除非有特殊需求(如进制转换)。

(图片来源网络,侵删)
