📖 学员手册
代码讲解已合并到高亮预览的代码注释里
📋 任务星图管理器 · 学员手册
第五课 | 60 分钟 | Level 1 | +130 EXP
| 你将学会 | 你将完成 |
|---|---|
| list 列表 | 保存多个学习任务 |
| dict 字典 | 保存任务详情卡 |
| append() | 添加新任务 |
| for / enumerate | 遍历并编号任务 |
| input() | 让使用者自己创建任务 |
| def 函数 | 封装输入、创建、统计功能 |
| try / except | 用户输错时保护程序 |
| len() / round() | 计算任务数和完成率 |
一、剧情
第四课我们做了学习计算器,能算一个结果。第五课要升级成真正的小产品:管理一整天的学习任务,统计完成率,并生成学习仪表盘。
二、核心口诀
python
tasks = [] # list:任务仓库
task = {'subject': '数学'} # dict:任务详情卡
tasks.append(task) # append:添加任务
for task in tasks: # for:逐个查看任务
print(task['subject'])一句话记住:list 管一组,dict 管一条,for 逐个看,def 封装成按钮。
三、6 关挑战
- 任务仓库:运行后输入任务数量,理解
tasks = []为什么能保存很多任务。 - 任务详情卡:看懂
task = {...}里每个字段的意思。 - 添加任务函数:用
create_task()和append()添加自己的学习任务。 - 任务清单:用
for + enumerate()给任务自动编号。 - 学习报告:看输出区的总任务数、总分钟数、完成率和高优先级数量。
- 产品仪表盘:截图绘图区的 Study Planner Pro 界面。
四、关键变量
| 变量 | 意思 | 怎么改 |
|---|---|---|
manager_name | 使用者名字 | 改成自己的名字 |
study_date | 学习日期 | 改成今天日期 |
tasks | 全部任务列表 | 由 build_tasks() 创建 |
count | 今天创建几个任务 | 运行时输入数字 |
done | 任务是否完成 | 输入 y 或 n |
finish_rate | 完成率 | 程序自动计算 |
五、原版 vs 优化版
| 对比点 | 原版 | 优化版 |
|---|---|---|
| 数据来源 | 代码里提前写死任务 | 运行时由使用者输入 |
| 容错能力 | 默认用户不会输错 | try / except 处理错误数字 |
| 创建方式 | 手动写 task1、task2 | create_task() 重复创建 |
| 批量能力 | 固定几个任务 | for range(count) 想建几个都可以 |
| 产品感 | 打印任务列表 | 生成报告和仪表盘 |
课堂里点击工具栏的 版本对比,可以看到每一块代码的原版写法和优化版写法。
六、课后作业
- 至少添加 6 个真实学习任务。
- 设置高/中/低优先级。
- 每个任务输入 y/n,模拟当天完成情况。
- 截图输出区学习报告和绘图区仪表盘。
- 送进 AI 进化舱,升级成网页学习计划 App 或飞书学习仪表盘。
Ctrl+/ 注释 · ▶ 运行
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
点击 ▶ 运行或按 Ctrl+Enter
预览区(HTML / turtle 输出)
📋 任务卡
1任务仓库 list
输入自己的学习任务,看到 list 如何保存多个任务。
💡运行后输入 1+10 XP
2任务详情卡 dict
自己创建一张任务卡,看到 dict 如何保存科目、内容、时长、优先级。
💡运行后输入 2+10 XP
3添加任务函数
用 add_task() 把使用者输入的任务放进列表。
💡运行后输入 3+10 XP
4遍历任务清单
把自己创建的任务逐条编号显示,像真正的计划清单。
💡运行后输入 4+10 XP
5学习报告统计
根据自己输入的任务统计完成率、总时长和高优先级任务。
💡运行后输入 5+10 XP
6产品仪表盘
用自己创建的数据生成 Study Planner Pro 仪表盘。
💡运行后输入 6+10 XP
🎁 完成全部 +30 XP
加载中
▶▼ 🧩 扩展
📦numpy
📦matplotlib
📦pillow
📦requests
📦sympy
📦pandas
📦scipy
📦beautifulsoup4
📦pygame
📦flask
📦opencv-python
📦nltk
📦sqlalchemy
📦plotly