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

Python3如何将嵌套列表中的字符串数字转换为整数?

解决嵌套列表中字符串整数的类型转换问题

没问题,我来帮你搞定这个嵌套列表的类型转换需求~

你遇到的核心问题是:直接用map(int, x)会尝试把每个子列表里的所有元素都转成整数,但第一个元素是'+'或'-'这类符号字符串,没法被int()解析,所以得针对性处理每个子列表的元素。

针对你的需求,我们可以这样写代码:

listy = [['+', '1', '0'], ['-', '2', '0']]
# 遍历每个子列表,保留第一个符号元素,将后面的字符串数字转成整数
converted_list = [[sublist[0]] + list(map(int, sublist[1:])) for sublist in listy]
print(converted_list)

运行这段代码后,输出结果就是你期望的:

[['+', 1, 0], ['-', 2, 0]]

代码解释

  • 外层的列表推导式遍历listy中的每个子列表;
  • 对于每个子列表sublist,sublist[0]保留原有的符号字符串;
  • sublist[1:]取子列表中除第一个元素外的所有字符串数字,用map(int, ...)把它们批量转成整数类型,再转成列表;
  • 最后用+把符号元素和转换后的整数列表拼接起来,得到每个处理后的子列表。

如果你更喜欢用列表推导式替代map,也可以写成这样:

converted_list = [[sublist[0]] + [int(num_str) for num_str in sublist[1:]] for sublist in listy]

效果是完全一样的,看你个人习惯选择就行。

内容的提问来源于stack exchange,提问作者Mahir Islam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:14:44