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

如何拆分嵌套列表中的字符串以得到目标列表结构?

解决Python列表拆分合并问题

你遇到的问题很典型——之前的列表推导式只处理了每个子列表的第一个元素,完全没把第二个元素整合进去。要实现目标,只需要把拆分后的第一个元素列表和第二个元素合并起来就行。

最简单的解决方案

用列表推导式将拆分后的结果与子列表的第二个元素拼接:

lst = [['one two', 'three'], ['four five', 'six']]
new_lst = [i[0].split() + [i[1]] for i in lst]
print(new_lst)
# 输出: [['one', 'two', 'three'], ['four', 'five', 'six']]

为什么之前的方法无效?

你写的[i[0].split() for i in lst]只对每个子列表的第一个元素(比如'one two')进行了拆分,完全忽略了第二个元素('three'和'six')。上面的代码通过+ [i[1]]把第二个元素添加到拆分后的列表末尾,正好得到你想要的结构。

更通用的写法(适配子列表多元素场景)

如果你的子列表可能包含更多元素(比如不止两个),可以用更灵活的方式:遍历每个子列表,拆分所有带空格的元素,再把所有结果合并成一个列表:

new_lst = []
for sublist in lst:
    temp = []
    for item in sublist:
        temp.extend(item.split())
    new_lst.append(temp)

这种方法不管子列表里有多少个元素,只要是带空格的字符串都会被拆分,最后合并成一个扁平的子列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 06:50:02