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

如何用Python合并含共同字符串的两个列表并实现指定排序

解决方案

1. 构建目标列表final

由于两个列表包含完全相同的字符串元素,仅顺序不同,最高效的方式是先将第二个列表echo转换为字典(以字符串为键、对应列表为值),再遍历第一个列表delta拼接元素:

# 将echo转换为字典,实现快速查找
echo_dict = dict(echo)

# 构建final列表,顺序与delta一致
final = [(s, num, echo_dict[s]) for s, num in delta]

生成的final列表格式完全符合示例要求。

2. 两种排序方法

按第二个值(整数)排序

使用sorted()函数,指定排序依据为元素的第二个值(索引1),默认升序,添加reverse=True可切换为降序:

# 按第二个值升序排序
sorted_by_num = sorted(final, key=lambda x: x[1])

# 按第二个值降序排序(与示例展示的顺序逻辑一致)
sorted_by_num_desc = sorted(final, key=lambda x: x[1], reverse=True)

按第三个值的最大值排序

指定排序依据为第三个元素(列表)的最大值,同样支持升序/降序切换:

# 按第三个列表的最大值升序排序
sorted_by_max_year = sorted(final, key=lambda x: max(x[2]))

# 按第三个列表的最大值降序排序
sorted_by_max_year_desc = sorted(final, key=lambda x: max(x[2]), reverse=True)

内容的提问来源于stack exchange,提问作者Joao Henrique da Silva

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 15:20:32