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

如何拆分嵌套列表元素并保留首部分且维持原嵌套结构

保留嵌套列表结构提取指定内容

我有一个嵌套列表,包含10个元素,每个子列表包含2个元素。其中部分元素格式为“3 of 4”或“56 of 60”,我仅需要提取其中的第一个数字。尝试使用split函数循环处理该列表,但返回的是一维列表,希望维持原有的嵌套列表结构以便后续导出使用。

输入列表

[['Jessica Andrade', 'Angela Hill'], ['0', '1'], ['131 of 322', '89 of 209'], ['40%', '42%'], ['148 of 342', '99 of 220'], ['2 of 3', '0 of 0'], ['66%', '---'], ['0', '0'], ['0', '0'], ['1:35', '0:06']]

原有处理代码

l=[]
for x in round1:
    for y in x:
        l.append(str(y).split(' of ', 1)[0])

原有输出(一维列表)

['Jessica Andrade', 'Angela Hill', '0', '1', '131', '89', '40%', '42%', '148', '99', '2', '0', '66%', '---', '0', '0', '0', '0', '1:35', '0:06']

修正后的代码

要维持嵌套结构,只需在外层循环中为每个子列表创建一个临时列表,处理完子列表内的所有元素后,再将这个临时列表添加到最终结果里:

round1 = [['Jessica Andrade', 'Angela Hill'], ['0', '1'], ['131 of 322', '89 of 209'], ['40%', '42%'], ['148 of 342', '99 of 220'], ['2 of 3', '0 of 0'], ['66%', '---'], ['0', '0'], ['0', '0'], ['1:35', '0:06']]
result = []
for sublist in round1:
    processed_sub = []
    for item in sublist:
        processed_sub.append(str(item).split(' of ', 1)[0])
    result.append(processed_sub)

修正后的输出(保留嵌套结构)

[['Jessica Andrade', 'Angela Hill'], ['0', '1'], ['131', '89'], ['40%', '42%'], ['148', '99'], ['2', '0'], ['66%', '---'], ['0', '0'], ['0', '0'], ['1:35', '0:06']]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 10:12:16