Python 现代开发学习笔记

02-05 按次数降序输出词频

本章题解 · 全部练习

题目

输入 B A B A C,按次数降序、同次数书名升序输出 A 2、B 2、C 1。先构造比较键,再用已经学过的元组排序。

推导与做法

排序时先比较次数,次数相同再比较书名。把字典项转换为 (-次数, 书名),就能用元组的升序同时表达两个要求。

输入 B A B A C,统计后得到 A:2、B:2、C:1;排序键为 (-2,A)、(-2,B)、(-1,C),输出 A 2、B 2、C 1。输出时再把负号还原,不修改字典里的真实次数。

实现与运行

查看带注释实现。实现只使用本章已经学过的语法。

在本题目录 02-05 中运行,使用已经选择的 Python 3.12 解释器。

# 使用项目解释器运行本题,题号决定执行哪一组演示。
python solution.py
查看本题运行结果
# 与上面的手算状态和题目数值逐项比较。
A 2
B 2
C 1

笔记正文与全部题解 · Ctrl / ⌘ K