25 分钟
Python 入门

项目扩展与优化

给待办管理器加更多功能,再把代码优化下

  • 添加搜索和统计功能
  • 添加分类和优先级
  • 代码重构与优化

功能扩展

在基础版本上,加三个功能:搜索、统计、分类。

搜索功能

示例代码(可运行)

统计功能

示例代码(可运行)

添加分类

示例代码(可运行)
💡继续扩展方向

交互式菜单(while + input)截止日期优先级排序标签系统导出CSV。把它做成你的第一个作品集项目!

阶段一总结

你已经走完 Python 入门阶段,掌握了:

变量、数据类型、运算符

条件判断、循环

函数、作用域

列表、元组、字典、集合

文件操作、异常处理

模块导入

阶段二:Python 进阶,学面向对象编程和更高级的数据结构。

预测输出
todos = [{"done": True}, {"done": False}, {"done": True}]
done = sum(1 for t in todos if t["done"])
print(done)
填空题填写空白处的代码
todos = [{"done": True}, {"done": False}] done = sum(1 for t in todos t["done"]) print(done) #
选择题

完成率怎么算?

资深工程师加餐

底层原理 · 大厂视角 · 工程经验,点卡片展开

Python 里整数、字符串甚至函数都是对象,堆在内存里;变量不是装东西的盒子,而是一张贴在对象上的「名字标签」(引用)。id(x) 看对象身份,is 比身份、== 比值。CPython 会缓存 -5~256 的小整数,所以 a=1;b=1 时 a is b 为 True,但 a=300;b=300 未必。结论:判断值是否相等永远用 ==,判断是不是 None 才用 is。

挑战任务

项目优化

简单+50 XP

给待办管理器加统计功能,包含三个指标:总数、已完成数、完成率。

项目优化
2 个测试用例

课后作业

交互式菜单

中等+20 XP

用 while+input 实现菜单:1添加 2查看 3完成 4删除 5退出。

交互式菜单
1 个测试用例