图形化编程实战:校园垃圾分类大挑战(附考点拆解与进阶)
近期多地图形化创意编程赛项密集开赛。以第五届重庆市青少年智能机器人编程大赛「创意编程与数字创作」赛项为例,小学低年级组明确要求使用图形化编程语言创作,重点考查编程基础知识、逻辑思维与交互设计能力。本文用一个原创图形化项目「校园垃圾分类大挑战」为例,带你把列表、循环、条件、变量、克隆体、自制积木、广播七大考点串成一条完整作品线,并给出可落地的积木拆解与进阶方向。

一、项目目标
做一个垃圾分类小游戏:四种分类桶(可回收物 / 厨余垃圾 / 有害垃圾 / 其他垃圾)排在底部,垃圾角色从顶部随机落下,玩家用数字键 1–4 选择对应桶,把垃圾投进正确的桶里得分,投错扣分并提示。包含倒计时、连击、关卡递增,整体偏"轻量但考点齐全",非常适合作为图形化赛项的练习作品。
二、核心考点
| 考点 | 在作品中的体现 |
|---|---|
| 列表 | 存"垃圾名称—正确类别"映射表;存四种分类桶名称 |
| 循环 | 主循环驱动垃圾下落;倒计时循环;列表遍历判定 |
| 条件 | 判断落点属于哪个桶、判断类别是否正确、判断游戏结束 |
| 变量 | 得分、倒计时、连击数、当前垃圾类别、关卡 |
| 克隆体 | 每一个下落的垃圾生成一个克隆体,带私有变量 |
| 自制积木 | 封装"画一个桶""生成随机垃圾""判定归类"等可复用动作 |
| 广播 | 解耦"出题—判定—报分—结束"各模块,避免互相耦合 |
三、解法拆解(分模块)
1. 数据准备:用列表当"小数据库"
不需要死记硬背,把垃圾和类别放进列表即可。例如:
垃圾名称列表 = [苹果核, 废电池, 矿泉水瓶, 旧报纸, 剩饭, 温度计, ...]
对应类别列表 = [厨余, 有害, 可回收, 可回收, 厨余, 有害, ...]
归类时只要用"当前序号"同时取两个列表的同一位置,就知道它该进哪个桶。比写一大串 如果…否则 判断清爽得多。
2. 垃圾生成:克隆体 + 随机数
用一个"生成器"角色,每隔若干帧克隆自己;克隆体启动时从列表里随机抽一个序号,把"我的类别"写进自己的私有变量,并显示对应造型。这样屏幕上有多少垃圾,就有多少个独立对象,互不干扰。
3. 交互:数字键选桶
按下 1 / 2 / 3 / 4,广播"投到桶1 / 桶2 / 桶3 / 桶4"。当前下落的垃圾收到广播后,比对自身私有变量里的"我的类别"与目标桶类别即可——全程只用"条件判断 + 广播",没有复杂嵌套。
4. 判定:一个条件搞定对错
如果 <我的类别> = <目标桶类别>:
得分 + 10,连击 + 1,广播"答对"
否则:
得分 - 5,连击 = 0,广播"答错"
5. 计分与节奏:变量驱动
用变量"倒计时"做秒级递减(循环里等待 1 秒再 -1),归零广播"游戏结束"。连击变量让连续答对额外加分,提升趣味性。关卡变量则用来控制下落速度,越高越快。
6. 解耦:广播让模块各管各的
把"出题、判定、报分、音效、结束"拆成独立角色 / 脚本,彼此只通过广播通信:
- 出题角色:广播
新垃圾 - 判定角色:收到
投放后比对并广播答对 / 答错 - 报分角色:收到
答对刷新分数与连击 - 音效角色:收到广播播放对应声音
这样后续想加玩法(比如限时、加关卡),只动一处,不会牵一发动全身——这正是图形化大作品最该养成的习惯。
7. 一段 Python 对照,看清"归类"的本质
图形化里那张列表映射表,本质就是"键—值"查找。用 Python 写出来一目了然:
# 垃圾 -> 正确类别 映射
trash_bin = {
"苹果核": "厨余", "剩饭": "厨余",
"废电池": "有害", "温度计": "有害",
"矿泉水瓶": "可回收", "旧报纸": "可回收",
"陶瓷碗": "其他", "纸巾": "其他",
}
def classify(name, chosen):
"""返回 (是否正确, 正确类别)"""
correct = trash_bin.get(name, "其他")
return chosen == correct, correct
# 模拟一次投放
name, chosen = "废电池", "有害"
ok, correct = classify(name, chosen)
print("答对了!" if ok else f"答错了,{name} 应投『{correct}』")
这段逻辑和图形化里"取两个列表同一位置比对"完全等价,理解它,列表映射就通透了。
四、运行效果
- 启动后顶部不断落下各种垃圾,底部四个彩色分类桶就位;
- 正确投放:分数 +10,连击数上涨,播放清脆音效;
- 错误投放:分数 -5,连击清零,屏幕提示正确类别;
- 倒计时归零:弹出"本局得分 / 最高连击",可一键重开。

五、进阶方向
- 限时挑战:把倒计时从 60 秒改为 30 秒,并提高下落速度,考验反应速度。
- 连击加倍:连击每满 5 次,单次得分翻倍,鼓励连续正确。
- 错误分析:答错的垃圾自动记入"错题列表",游戏结束展示"你最容易搞混的是哪些",顺带科普。
- 多关卡:关卡越高,新增易混淆项(如 厨余 vs 其他),并加快节奏。
- 数据可视化:用柱状图角色画出四类垃圾被正确分类的次数,把"编程 + 数据"结合起来。
六、小结与互动
「校园垃圾分类大挑战」把七大图形化核心考点收进一个生活化小游戏里:列表当数据库、克隆体做对象、条件做判定、变量记状态、自制积木去重复、广播做解耦。照着上面的模块拆分,你也能半天内做出自己的第一版。
你最想先做哪个进阶方向?或者你手头的比赛题里有没有类似的"分类 / 匹配"题型?欢迎在评论区聊聊,我可以据此再拆解一期。
📚 免费少儿编程资料(夸克网盘领取)
以下资料来自夸克网盘分享,点击链接可直接保存;若需在 App 内打开,也可复制下方明文链接:
- 全国青少年信息素养大赛复赛集训题目Python&C++.docx
https://pan.quark.cn/s/93995d3cb150 - 2024信息素养-智能算法应用挑战赛-复赛初中组题目7月7日.pdf
https://pan.quark.cn/s/da97b5dbf75d - Python背记手册.pdf
https://pan.quark.cn/s/7568ae9ca92b - Python课程
https://pan.quark.cn/s/a94bf02d00c6 - 2024信息素养大赛图形化复赛集训题答案3-9
https://pan.quark.cn/s/6ccab7ec3cbc - 2025年03月份电子学会考级真题
https://pan.quark.cn/s/4403c4228912 - 2025全国青少年信息素养大赛赛项说明
https://pan.quark.cn/s/d9d0df4a9f29 - 青少儿信息素养大赛编程资料
https://pan.quark.cn/s/4ab6bd83be8a
资料持续更新,关注获取最新分享。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)