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

如何将Python字典中存储的分词句子值拼接为单个列表?

报错原因

你写的代码存在两个核心问题:

  • 嵌套了多层生成器,join 方法仅支持接收字符串组成的可迭代对象,你传入的是嵌套结构的生成器,自然会报类型错误
  • 你的需求是输出单词组成的列表,而 join 方法的作用是把字符串序列拼接为单个字符串,从功能上就不符合你的需求
实现代码

方法1:列表推导式(最简洁易读)

直接用三层嵌套的列表推导式遍历所有层级的元素即可:

all_words = [word for key in dict1 for sentence in dict1[key] for word in sentence]

推导式的遍历顺序和普通嵌套for循环完全一致:先遍历字典的所有键,再遍历每个键对应值里的所有分词句子,最后遍历每个句子里的所有单词,将单词依次收集到新列表中。

方法2:使用itertools.chain(适合处理超大规模数据)

如果数据量很大,用itertools的链式展开性能更高:

from itertools import chain

all_words = list(chain.from_iterable(chain.from_iterable(dict1.values())))

这里先通过dict1.values()拿到字典所有值,第一层chain.from_iterable把值列表里的句子列表展开为所有句子的迭代器,第二层再把每个句子展开为单词迭代器,最后转成列表即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 14:06:03