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

Python如何按子列表首单词出现频次从高到低排序多维列表

实现方法

核心逻辑

  • 提取所有子列表的第一个元素,用Counter统计每个单词的出现频次
  • 排序时以对应单词的频次倒序为排序依据,频次相同的元素默认保留原列表中的相对顺序

完整可运行代码

from collections import Counter

# 示例输入
input_list = [['red', 1], ['blue', 2], ['blue', 3], ['green', 4], ['red', 5], ['red', 6]]

# 仅统计每个子元素首单词的出现频次
word_counts = Counter(sublist[0] for sublist in input_list)

# 按频次从高到低排序
sorted_list = sorted(input_list, key=lambda x: -word_counts[x[0]])

print(sorted_list)

如果偏好显式声明倒序参数,也可以将排序代码替换为:

sorted_list = sorted(input_list, key=lambda x: word_counts[x[0]], reverse=True)

两种写法效果完全一致。

输出结果

[['red', 1], ['red', 5], ['red', 6], ['blue', 2], ['blue', 3], ['green', 4]]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 08:54:03