单元四
第16课 排行榜——列表排序与展示

一、任务目标
理解列表可按分数排序后展示,能做出简易排行榜:高分在前。
二、我们要学什么
- 学习要点:排行榜|列表排序与展示
- 本课过关:能完成:说出排序改变的是显示顺序;载入体验程序,指出分数高的排在前面;插入一个新分数后,名次跟着变。
- 示例对齐:体验题对应本课「编程体验」;完整代码对应编程题1;补全与独立编写对应编程题2–3。均在 Mixly 图形化积木中完成。
三、本节要点
本课要认识排序展示。重难点是先收集分数,再统一排序,不要边加边乱序打印。要点对齐「排行榜|列表排序与展示」。
1读场景明确真实任务
2对要点排行榜|列表排序与展示
3载入运行图形化积木
四、解题思路
任务:把若干分数排序后打印排行榜。请分清输入(分数列表)与输出(有序名单)。
本课主要用到:屏幕输出。
- 1明确任务「高分在前」:打印顺序应与分数高低一致。
- 2收集分数后排序,再依次打印。
- 3加入一个新分数后重排,观察名次是否变化。
流程示意(可对照左侧文字)
五、图形块讲解
本课用到的 Mixly 图形块均已在前面的课讲过。请直接对照编程练习搭积木;若有遗忘,回到该积木首次出现的课页复习。
六、知识点讲解
排行榜把分数放进列表,排序后再展示。本课只要求会按数值排序显示——先收集、再排序、再打印,顺序才稳定。不要求复杂的并列名次规则。
先弄清:先收集再排序;再进编程练习对照名次。
七、编程练习
用下拉列表切换题目;下方 Mixly 默认显示图形化积木。请在 Mixly 工具栏点「运行」;「检查」读取 Mixly 代码判题。
先阅读并运行,感受游戏循环。
参考代码(对照抄写到下方 Mixly)
board = [
{"name": "小飞", "score": 120},
{"name": "阿狸", "score": 95},
{"name": "勇者", "score": 150},
]
i = 0
while i < len(board):
j = 0
while j < len(board) - 1:
if board[j]["score"] < board[j + 1]["score"]:
tmp = board[j]
board[j] = board[j + 1]
board[j + 1] = tmp
j = j + 1
i = i + 1
print("=== 排行榜 ===")
k = 0
while k < len(board):
row = board[k]
print(k + 1, row["name"], row["score"], "分")
k = k + 1
正在载入编程环境
正在载入 Mixly 图形化编程环境…
八、课堂练习
先完成两道正误判断,再做其余题目;选出后点「检查」。
判断:把分数从高到低排好,是为了让第一名排在最前面显示。
判断:本课必须手写处理所有并列名次、平分时的学号规则,否则不能打印。
把分数从高到低排好,通常是为了?
排行榜每条用姓名和分数一对值,好处是?
打印时用 k + 1 作为名次,是因为?
九、本节小结
本课主题是排行榜:列表保存分数,排序后展示。高分在前。