You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将字符串列表转为整数列表:代码仅添加最后元素的问题排查

问题分析与解决

问题根源

你代码里的核心问题是把numbers_list = []放在了for循环内部。每次循环时,都会重新创建一个空列表,之前循环添加的元素都会被丢弃,最后自然只剩最后一次循环添加的元素。

修正后的代码

方式1:将列表初始化移到循环外

numbers = "9, 223, 372, 036, 854, 775, 807"

split_numbers = numbers.split(", ")
print(split_numbers)

numbers_list = []  # 初始化移到循环外
for number_string in split_numbers:
    number = int(number_string)
    numbers_list.append(number)

print(numbers_list)

方式2:用列表推导式更简洁

Python里处理这种批量转换场景,列表推导式是更高效简洁的写法:

numbers = "9, 223, 372, 036, 854, 775, 807"
numbers_list = [int(num) for num in numbers.split(", ")]
print(numbers_list)

额外说明

注意原字符串里的036转成整数后会变成36,因为整数不保留前导零。如果需要保留前导零的格式,你可以选择保留字符串类型,或者转成带前导零的格式化字符串(比如用f"{int(num):03d}"处理)。

内容的提问来源于stack exchange,提问作者Archis Likhitkar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 06:52:07