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

Python如何按指定映射规则重排列表内每个字典的键顺序

实现方法

Python 3.7及以上版本的原生字典默认支持保留插入顺序,你可以按照以下步骤实现需求:

  1. 首先从给定的映射关系中提取出按优先级排序的键序列
# 按mapping的数字键从小到大排序,取出对应字段名,得到目标键顺序
key_order = [mapping[num] for num in sorted(mapping.keys())]
  1. 遍历原字典列表,按上述键顺序重新构造字典即可
new_lis = [{key: old_dict[key] for key in key_order} for old_dict in lis]

如果你使用的是3.7以下的Python版本,可以用collections.OrderedDict来保证顺序:

from collections import OrderedDict

key_order = [mapping[num] for num in sorted(mapping.keys())]
new_lis = [OrderedDict((key, old_dict[key]) for key in key_order) for old_dict in lis]

以上代码会直接得到你预期的调整顺序后的列表,如果你不需要保留原列表,也可以直接覆盖原lis变量。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 13:45:04