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

如何将结构一致的字典列表转换为指定格式的列表嵌套结构?

解决方法

要得到每个字典的值组成的嵌套列表,直接遍历每个字典并提取其值即可:

基础解法(Python 3.7+)

Python 3.7及以上版本的字典会保留键的插入顺序,直接用列表推导式提取每个字典的values()并转为列表即可满足需求:

mylist = [{'a': 0, 'b': 2}, {'a': 1, 'b': 3}]
result = [list(d.values()) for d in mylist]
# 输出: [[0, 2], [1, 3]]

兼容低版本Python(3.6及以下)

如果使用的Python版本低于3.7,字典不保证键的顺序,这时可以指定固定的键列表来提取值,确保结果顺序一致:

mylist = [{'a': 0, 'b': 2}, {'a': 1, 'b': 3}]
keys = ['a', 'b']
result = [[d[key] for key in keys] for d in mylist]
# 输出: [[0, 2], [1, 3]]

原代码不符合预期的原因

你使用的zip(*[d.values() for d in mylist])是把所有字典中对应位置的值按键聚合,比如将两个字典的a值、b值分别分组,因此得到的是按键归类的结果,而非每个字典单独成子列表的结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 10:11:34