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

如何按照长参考列表的顺序对短列表进行排序

列表按指定参考顺序排序的实现方案(Python环境)

核心思路是提前为参考列表的所有元素绑定对应的位置权重,排序时直接调用权重值作为排序依据,单次查询效率为O(1),整体排序效率更高。

具体实现步骤

  • 第一步:构建参考列表的元素-索引映射字典
A = ['X_0', 'Z_0', 'X_1', 'Y_0', 'Z_1', 'X_2', 'Y_1', 'Z_2', 'Y_2']
order_map = {val: idx for idx, val in enumerate(A)}
  • 第二步:用映射的索引作为key对B排序
B = ['Z_0', 'X_1', 'X_0']
B_final = sorted(B, key=lambda x: order_map[x])

输出验证

运行后输出的B_final结果和预期一致:

['X_0', 'Z_0', 'X_1']

兼容异常场景的写法

如果B中可能存在A没有的元素,可以给key设置默认值,将异常元素统一放到排序结果末尾:

B_final = sorted(B, key=lambda x: order_map.get(x, len(A)))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 06:06:05