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

如何在Python中将含数字与单词的字符串转换为嵌套列表?

如何将包含姓名与数字的字符串转换为嵌套列表

问题描述

需要将如下格式的字符串:

ex_name_age = "Hannah 12, Daniel 98, Maya 30, Elizabeth 96"

转换为每个子列表包含姓名字符串与对应整数年龄的嵌套列表:

[['Hannah', 12],
 ['Daniel', 98],
 ['Maya', 30],
 ['Elizabeth', 96]]

当前问题分析

你已通过split(", ")拆分出了每个"姓名+年龄"的字符串,但仅将它们作为子列表的单个元素,未进一步拆分姓名和年龄,也未将数字转为整数,因此结果不符合需求。

解决方案

方法一:分步实现(清晰易懂)

ex_name_age = "Hannah 12, Daniel 98, Maya 30, Elizabeth 96"
# 拆分出每个"姓名 年龄"的独立字符串
name_age_strings = ex_name_age.split(", ")
# 初始化结果列表
result = []
# 遍历处理每个字符串
for s in name_age_strings:
    name, age_str = s.split()  # 按空格拆分姓名与年龄字符串
    result.append([name, int(age_str)])  # 将年龄转为整数后组成子列表存入结果

print(result)

方法二:列表推导式(简洁写法)

ex_name_age = "Hannah 12, Daniel 98, Maya 30, Elizabeth 96"
result = [[name, int(age)] for item in ex_name_age.split(", ") for name, age in [item.split()]]
print(result)

关键说明

  • split(", "):将原字符串按, 分割,得到单个的"姓名 年龄"字符串列表。
  • split():对每个"姓名 年龄"字符串按空格拆分,得到姓名和年龄的字符串对。
  • int(age):将年龄字符串转换为整数类型,匹配期望输出的格式要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 10:15:40