Files
coding-mentor-agent/kb/python-course-kb-practical-python/wiki/index.md
T

49 KiB

Practical Python Programming KB

Attribution and license: summaries/practical-python-attribution — course-derived content and license notes.

Runtime note: 本 KB 保留课程原始 Python 3.6 历史基线;新学习环境应使用仍受官方维护的 Python 3.x 版本,详见 summaries/00_Setup。

Documents

  • summaries/00_Overview — 本文是 Practical Python Programming 知识库的课程总览。; type: short; source: sources/Contents.md
  • summaries/00_Setup — 本文是 Practical Python Programming 课程的设置与概览说明,主要介绍课程所需时间、Python 环境要求、仓库准备方式、目录结构、学习顺序以及解答代码的使用建议。; type: short; source: sources/00_Setup.md
  • summaries/01_Class — 本文介绍 Python 中 class 语句的基本用法,以及如何通过类创建新的对象。; type: short; source: sources/01_Class.md
  • summaries/01_Datatypes — 本文介绍 Python 中用于表示和组织数据的基本方式,重点包括 None、元组(tuple)和字典(dictionary),并通过读取 portfolio.csv 中股票持仓数据的…; type: short; source: sources/01_Datatypes.md
  • summaries/01_Dicts_revisited — 本文重新审视 Python 字典,说明 Python 的模块、对象、类、继承和方法调用机制在很大程度上都建立在字典之上。; type: short; source: sources/01_Dicts_revisited.md
  • summaries/01_Introduction__00_Overview — 本文档是 Python 入门部分的总览页,说明第一章的学习目标与章节结构。; type: short; source: sources/01_Introduction__00_Overview.md
  • summaries/01_Iteration_protocol — 本文介绍 Python 中无处不在的 Python迭代协议,解释 for 循环背后的底层机制,并通过 Portfolio 示例说明如何让自定义对象表现得像标准容器。; type: short; source: sources/01_Iteration_protocol.md
  • summaries/01_Packages — 本文介绍如何把一组 Python 模块组织成包(package),以及包化后在导入、脚本运行和应用目录结构上的关键变化。; type: short; source: sources/01_Packages.md
  • summaries/01_Python — 本文是课程的 Python 入门开篇,介绍了 Python 的基本定位、获取方式、诞生背景,以及为什么应当从 命令行与终端 中学习和使用 Python。; type: short; source: sources/01_Python.md
  • summaries/01_Script — 本文讲解 Python 脚本的基本组织方式,并强调随着脚本功能增长,应尽早用函数重构程序,以提升模块化编程、可读性、可复用性和可维护性。; type: short; source: sources/01_Script.md
  • summaries/01_Testing — 本文介绍 Python 中测试的基本思想与实践方式,强调动态语言缺少编译期检查,因此需要通过运行代码和系统化测试来发现问题。; type: short; source: sources/01_Testing.md
  • summaries/01_Variable_arguments — 本文讲解 Python 函数中的可变参数机制,包括位置可变参数 *args、关键字可变参数 **kwargs,以及如何用 * 和 ** 将元组、字典展开为函数调用参数。; type: short; source: sources/01_Variable_arguments.md
  • summaries/02_Anonymous_function — 本文讲解 Python 中的匿名函数 lambda,重点说明它如何作为 sort() 的 key 回调函数,用于按自定义字段对列表元素排序。; type: short; source: sources/02_Anonymous_function.md
  • summaries/02_Classes_encapsulation — 本文介绍 Python 中类与对象的封装方式,重点说明公共接口与内部实现的区别,以及 Python 如何通过命名约定、属性管理、property 和 __slots__ 来实现较弱但…; type: short; source: sources/02_Classes_encapsulation.md
  • summaries/02_Containers — 本文介绍 Python 中三类核心Python容器:列表、字典和集合,并通过股票投资组合与价格数据的读取练习,展示如何选择合适的数据结构来组织、查询和计算数据。; type: short; source: sources/02_Containers.md
  • summaries/02_Customizing_iteration — 本文介绍如何用生成器函数自定义 Python 的迭代行为。; type: short; source: sources/02_Customizing_iteration.md
  • summaries/02_Hello_world — 本文是 Python 入门课程的第一个实践程序章节,围绕如何运行解释器、使用交互式 REPL、创建并执行 .py 文件,以及理解最基础的 Python 语法结构展开。; type: short; source: sources/02_Hello_world.md
  • summaries/02_Inheritance — 本文介绍 Python 中的继承机制,以及如何用继承编写可扩展、可定制的程序。; type: short; source: sources/02_Inheritance.md
  • summaries/02_Logging — 本文介绍 Python 标准库中的 logging 模块,说明如何用日志替代直接 print() 或静默忽略异常,从而让诊断信息的输出方式、详细程度和目的地变得可配置。; type: short; source: sources/02_Logging.md
  • summaries/02_More_functions — 本文深入讲解 Python 函数的调用方式、默认参数、返回值、作用域、参数传递语义,并通过一系列练习逐步构建一个通用的 CSV 文件解析函数 parse_csv()。; type: short; source: sources/02_More_functions.md
  • summaries/02_Third_party — 本文介绍 Python 第三方模块的基本使用背景:Python 自带大量标准库模块,但更丰富的生态来自第三方模块,通常可通过 PyPI 或搜索引擎查找。; type: short; source: sources/02_Third_party.md
  • summaries/02_Working_with_data__00_Overview — 本页是《Working With Data》章节的总览,说明编写实用 Python 程序需要掌握如何处理数据,并给出本章的学习路径。; type: short; source: sources/02_Working_with_data__00_Overview.md
  • summaries/03_Debugging — 本文讲解 Python 程序崩溃后的基础调试方法,重点包括如何阅读 traceback、使用交互式解释器保留现场、用 print() 辅助排查,以及通过 Python 内置调试器 `pd…; type: short; source: sources/03_Debugging.md
  • summaries/03_Distribution — 本文介绍 Python 项目分发的最基础流程:通过 setup.py 描述项目元数据与包结构,通过 MANIFEST.in 声明额外文件,使用 `python setup.py sd…; type: short; source: sources/03_Distribution.md
  • summaries/03_Error_checking — 本文补充说明 Python 中的错误检查与异常处理机制,重点包括:Python 的运行时错误模型、异常的抛出与捕获、异常传播、捕获范围控制、重新抛出、finally 与 with 的…; type: short; source: sources/03_Error_checking.md
  • summaries/03_Formatting — 本文讲解 Python 中用于生成结构化文本输出的字符串格式化技术,重点服务于数据处理场景中的表格输出,例如股票投资组合报表。; type: short; source: sources/03_Formatting.md
  • summaries/03_Numbers — 本文是 Practical Python 第 1.3 节,围绕 Python 中的数字计算展开,介绍数字类型、常见算术与比较运算、类型转换,并通过按揭贷款程序练习巩固循环、累计和数值计算。; type: short; source: sources/03_Numbers.md
  • summaries/03_Producers_consumers — 本文讲解如何利用 Python 生成器 组织生产者-消费者问题,并把多个处理步骤串联成惰性执行的 concepts/数据流管道。; type: short; source: sources/03_Producers_consumers.md
  • summaries/03_Program_organization__00_Overview — 本文是第 3 章“Program Organization”的导览页,承接前面关于 Python 基础与数据处理的内容,说明当程序从短脚本发展为较大项目时,需要更系统的组织方式。; type: short; source: sources/03_Program_organization__00_Overview.md
  • summaries/03_Returning_functions — 本文介绍 Python 中“函数返回函数”的模式,并由此引出 闭包 的概念。; type: short; source: sources/03_Returning_functions.md
  • summaries/03_Special_methods — 本文介绍 Python 类中用于定制对象行为的“特殊方法”(special methods / magic methods),并说明字符串表示、运算符重载、容器协议、方法调用过程、绑定方法以…; type: short; source: sources/03_Special_methods.md
  • summaries/04_Classes_objects__00_Overview — 本页是第 4 章“Classes and Objects”的总览,标志着课程从使用 Python 内置数据类型,进入到自定义对象与面向对象编程的阶段。; type: short; source: sources/04_Classes_objects__00_Overview.md
  • summaries/04_Defining_exceptions — 本文介绍 Python 中如何定义用户自定义异常,以及为什么库代码应使用专用异常来表达特定的使用错误。; type: short; source: sources/04_Defining_exceptions.md
  • summaries/04_Function_decorators — 本文介绍 Python 中的函数装饰器(function decorators),说明它们如何从“为多个函数重复添加相同逻辑”的需求中自然产生,并通过日志与计时示例展示装饰器的基本实现方式。; type: short; source: sources/04_Function_decorators.md
  • summaries/04_Modules — 本文介绍 Python 中的Python模块:任何 .py 源文件都是一个模块;模块通过 import 加载和执行,并形成独立的命名空间。; type: short; source: sources/04_Modules.md
  • summaries/04_More_generators — 本节继续扩展 Python generator 相关主题,重点介绍generator expression、生成器的设计价值,以及标准库 itertools 中常见的迭代工具。; type: short; source: sources/04_More_generators.md
  • summaries/04_Sequences — 本文介绍 Python 中的Python序列及其常见操作,包括字符串、列表、元组、切片、循环遍历、range()、enumerate()、元组解包与 zip()。; type: short; source: sources/04_Sequences.md
  • summaries/04_Strings — 本文介绍 Python 中用于处理文本的核心类型 str,涵盖字符串字面量、转义字符、Unicode 表示、索引与切片、常用操作和方法、不可变性、类型转换、字节串、原始字符串、f-str…; type: short; source: sources/04_Strings.md
  • summaries/05_Collections — 本文介绍 Python 标准库 collections 模块中几个常用的数据处理工具,重点包括 Counter、defaultdict 和 deque,展示它们如何简化计数、…; type: short; source: sources/05_Collections.md
  • summaries/05_Decorated_methods — 本文介绍 Python 类定义中常见的内置方法装饰器,说明它们如何改变方法与实例、类之间的绑定关系,并通过练习展示如何用 @classmethod 改进对象构造逻辑。; type: short; source: sources/05_Decorated_methods.md
  • summaries/05_Lists — 本文介绍 Python列表:Python 中用于保存有序值集合的主要数据类型。; type: short; source: sources/05_Lists.md
  • summaries/05_Main_module — 本文介绍 Python 中“主程序/主模块”的概念,以及如何把模块组织成可导入、可执行的命令行脚本。; type: short; source: sources/05_Main_module.md
  • summaries/05_Object_model__00_Overview — 本页是第 5 章“Python 对象内部机制”的导览,说明本章将从实现角度解释 Python 对象与类的工作方式,并介绍更好组织和封装对象内部状态的常见惯用法。; type: short; source: sources/05_Object_model__00_Overview.md
  • summaries/06_Design_discussion — 本文讨论一个重要的库函数设计选择:函数参数应该接收“文件名”,还是接收“可迭代的行对象”。; type: short; source: sources/06_Design_discussion.md
  • summaries/06_Files — 本文介绍 Python 中的基础文件管理,包括如何打开、读取、写入和关闭文件,以及在实际数据处理任务中逐行读取文本文件的方法。; type: short; source: sources/06_Files.md
  • summaries/06_Generators__00_Overview — 本文件是第 6 章「Generators」的总览页,介绍 Python 中生成器相关主题的学习路线。; type: short; source: sources/06_Generators__00_Overview.md
  • summaries/06_List_comprehension — 本文介绍 Python 中的列表推导式(list comprehension),说明如何用简洁表达式对序列进行转换、过滤、查询和数据提取,并进一步扩展到集合推导式与字典推导式。; type: short; source: sources/06_List_comprehension.md
  • summaries/07_Advanced_Topics__00_Overview — 本页是第 7 章“高级主题”的总览,介绍了一组在日常 Python 编程中可能遇到的进阶特性。; type: short; source: sources/07_Advanced_Topics__00_Overview.md
  • summaries/07_Functions — 本文介绍了 Python 程序组织的基础工具:自定义函数、标准库函数、异常处理,以及如何把脚本改造成可复用、可测试、可从命令行调用的程序。; type: short; source: sources/07_Functions.md
  • summaries/07_Objects — 本文介绍 Python 的内部对象模型,重点说明赋值、引用、对象身份、浅拷贝与深拷贝、类型检查,以及“一切皆对象”的含义。; type: short; source: sources/07_Objects.md
  • summaries/08_Testing_debugging__00_Overview — 本文档是第 8 章“Testing and debugging”的总览页,介绍本章将围绕软件开发中的基础质量保障与问题诊断主题展开,包括测试、日志、错误处理、诊断与调试。; type: short; source: sources/08_Testing_debugging__00_Overview.md
  • summaries/09_Packages__00_Overview — 本文是第 9 章“Packages”的章节导览,说明本章将课程收尾于 Python 代码的包结构组织、第三方包安装,以及如何准备将自己的代码交付给他人使用。; type: short; source: sources/09_Packages__00_Overview.md
  • summaries/Contents — 本文档是《Practical Python Programming》的课程目录页,提供了整门 Python 实用编程课程的结构化入口。; type: short; source: sources/Contents.md
  • summaries/practical-python-attribution — 本文档记录了本知识库中与 Practical Python Programming 相关内容的来源归属与许可要求。; type: short; source: sources/practical-python-attribution.md
  • summaries/TheEnd — 本文是课程的结束页,标志着学习者已经完成整个课程。; type: short; source: sources/TheEnd.md

Concepts

Exercises

Explorations

  • No saved explorations yet.