60 lines
3.6 KiB
Markdown
60 lines
3.6 KiB
Markdown
---
|
|
doc_type: short
|
|
full_text: sources/Contents.md
|
|
---
|
|
|
|
# Practical Python Programming 课程总览
|
|
|
|
本文是 Practical Python Programming 知识库的课程总览。课程从最小可运行的 Python 程序开始,逐步进入数据处理、程序组织、类与对象、对象模型、生成器、高级函数特性、测试调试和包管理,最终目标是让学习者能写出可运行、可调试、可组织、可复用的 Python 程序。
|
|
|
|
本知识库内容派生自 Practical Python Programming,许可与署名信息见 [[summaries/practical-python-attribution]]。
|
|
|
|
## 学习主线
|
|
|
|
课程按能力递进组织:
|
|
|
|
1. **环境与入门**:安装 Python,使用解释器,编辑和运行脚本,理解基础语法、表达式、字符串、列表、文件和函数。
|
|
2. **数据处理**:用元组、字典、列表、集合、推导式和 CSV 文件组织现实数据,并学习格式化输出、计数、查询和转换。
|
|
3. **程序组织**:把脚本拆分为函数和模块,处理错误,设计可复用接口,并理解 `main()`、模块导入和命令行执行。
|
|
4. **类与对象**:用类封装数据和行为,理解实例、方法、继承、多态、特殊方法和异常类型。
|
|
5. **对象模型**:深入理解名称、引用、可变性、属性查找、绑定方法、属性、`__slots__`、静态方法和类方法。
|
|
6. **生成器与迭代**:使用迭代协议、生成器函数、生成器表达式和管道组织流式数据处理。
|
|
7. **高级主题**:学习可变参数、匿名函数、闭包、装饰器和装饰方法等函数式与元编程基础。
|
|
8. **测试、日志与调试**:使用单元测试、日志和调试器定位问题,建立可维护程序的反馈循环。
|
|
9. **包与分发**:理解包结构、第三方模块、依赖管理和代码交付的基本原则。
|
|
|
|
## 核心能力
|
|
|
|
- 从交互式试验过渡到可重复运行的脚本;
|
|
- 用 Python 容器和文件处理完成小型数据分析任务;
|
|
- 把一次性脚本逐步重构为函数、模块、包和应用目录;
|
|
- 用对象、协议和生成器表达更复杂的数据模型和数据流;
|
|
- 用测试、日志和调试工具缩短定位问题的反馈时间;
|
|
- 理解包、依赖和分发的稳定原则,而不是只记忆某个工具命令。
|
|
|
|
## 主要入口
|
|
|
|
- [[summaries/01_Introduction__00_Overview]]:从零开始学习编辑、运行、调试程序,并完成 CSV 数据处理的入门脚本。
|
|
- [[summaries/02_Working_with_data__00_Overview]]:围绕数据结构、查询、格式化和对象表示组织数据处理能力。
|
|
- [[summaries/03_Program_organization__00_Overview]]:从脚本走向函数、模块、错误处理和库接口。
|
|
- [[summaries/04_Classes_objects__00_Overview]]:用类、对象、继承和特殊方法组织行为。
|
|
- [[summaries/05_Object_model__00_Overview]]:解释 Python 对象、属性、方法和协议的运行机制。
|
|
- [[summaries/06_Generators__00_Overview]]:使用生成器和迭代协议处理流式数据。
|
|
- [[summaries/07_Advanced_Topics__00_Overview]]:覆盖可变参数、lambda、闭包和装饰器。
|
|
- [[summaries/08_Testing_debugging__00_Overview]]:建立测试、日志和调试实践。
|
|
- [[summaries/09_Packages__00_Overview]]:整理包结构、第三方模块和代码分发。
|
|
|
|
## 相关概念
|
|
|
|
- [[concepts/课程练习工作流]]
|
|
- [[concepts/Python-开发环境]]
|
|
- [[concepts/变量与数据类型]]
|
|
- [[concepts/字典与数据建模]]
|
|
- [[concepts/模块与-import]]
|
|
- [[concepts/main-函数与脚本结构]]
|
|
- [[concepts/类与对象]]
|
|
- [[concepts/Python-对象模型]]
|
|
- [[concepts/迭代协议与生成器]]
|
|
- [[concepts/测试-日志与调试]]
|
|
- [[concepts/包与虚拟环境]]
|