调研报告索引(2026-09-05)¶
六份报告支撑
README.md与plan/的每一个设计决定。本页说明每份报告的结论、可信度、以及计划采纳了什么、没采纳什么、为什么。生成方式:01、03 由主代理直接用 Tavily CLI 抓取官方页面后撰写(子代理多次因连接中断失败);02、04、05、06 由 researcher 子代理撰写、主代理审阅。所有报告中的 URL 都由检索得到,个别可能已变动;版本号、日期类关键事实以 01 报告为准(已逐条对照 python.org / peps.python.org / docs.python.org 原文)。
| # | 文件 | 一句话结论 | 采纳情况 |
|---|---|---|---|
| 01 | 01-python-version-and-new-features.md |
最新稳定版 3.14.7(2026-08-05);3.15.0 定于 2026-10-01(PEP 686 UTF-8 默认);3.12–3.14 对初学者有用的只有 f-string 放宽、新 REPL、更好的报错;其余点名即可 | 全部采纳:教学基准 3.14、encoding="utf-8" 列 A 档、"知道存在"档的内容与措辞 |
| 02 | 02-toolchain-windows-uv-ruff-vscode.md |
全程 uv run 不激活虚拟环境;Day 1 第一步关闭商店别名;扩展组合 python + debugpy + ruff + 中文包;8 大 Windows 坑速查 |
采纳为 Day 1 Block 0 的步骤与坑表。未采纳:报告建议在 PowerShell 预设 PYTHONUTF8=1——我们坚持在代码里显式写编码,避免"在自己电脑能跑、换台机器就崩" |
| 03 | 03-learning-resources-zh-en.md |
中文主线廖雪峰、英文主线 Automate 3e(免费在线)、官方教程做对照;Python Tutor 可视化;Exercism/futurecoder 补充;过时资源黑名单 | 采纳为 README 第 5 节与各 Block 的"阅读" |
| 04 | 04-core-knowledge-map-and-pitfalls.md |
8 套大纲的交集 = 类型/容器/控制流/函数/文件/异常;现代写法(f-string、pathlib、match、X | None、dataclass)必须替换老写法;25 条陷阱 |
知识点三档表几乎全部采纳(个别档位上调:列表推导式、with open(...encoding) 升为 A)。未采纳其"Day 1 只做基础、Day 3 才做 OOP"的 8.5/8.5/8 小时分配——与实际 10/10/5 小时不符,且学生已有基础 |
| 05 | 05-learning-science-and-ai-usage.md |
每日高负荷编码上限 4–5 小时;50+10 PRIMM 节奏;晨间闭卷回忆;代码追踪先于编写;AI 直接给答案会损害学习(沃顿 2024、MIT 2025、CS50 Duck 等);7 条 AI 规则与 5 个提示词模板 | 采纳:节奏、晨测、每日结构、AI 七条规则、提示词与日志模板、D+3/D+7/D+30 复习点。未采纳其日程表把"变量/条件/循环"排满 Day 1——那是学生已会的内容;报告中"8 分钟自检"替换了我最初的"15 分钟" |
| 06 | 06-exercises-projects-and-testing.md |
Day 1 内嵌 assert 自测 → Day 2 过渡 pytest;扁平布局、不用 src;CS50P Final Project 范式(project.py + test_project.py + README);3 个项目规格;pytest 9 / ruff 0.16 支持 3.14 | 采纳为练习文件结构、project/README.md、pyproject.toml。本机实测 pytest 9.1.1、ruff 0.16.6、Python 3.14.4 组合可用 |
第二批(一个月进阶,2026-09-05 深夜完成)¶
| 编号 | 文件 | 一句话结论 | 对计划的影响 |
|---|---|---|---|
| 07 | 07-python-advanced-language-2026.md |
迭代器/生成器、闭包与装饰器、上下文管理器、数据模型与魔术方法、Protocol/ABC 的 2026 现代写法;3.14 的 PEP 649/749 延迟注解、annotationlib、PEP 758、PEP 765、PEP 750 t-string 如何影响教学 |
第 1 周(M1–M5)的知识点分档与预测代码全部来自这里;t-string 只作 render 一个小练习,不作重点 |
| 08 | 08-engineering-structure-typing-2026.md |
src 布局、PEP 621/735、uv 项目与 workspace、Pylance 为主 + ty 0.0.x 体验、ruff 规则家族、prek;typing 进阶(Protocol、TypeIs、PEP 695 泛型、ParamSpec) |
第 2 周 M6/M7;仓库改为 uv workspace(projects/*);ty 不作门禁 |
| 09 | 09-pydantic-2026.md |
Pydantic 2.13.5(2.12 起原生支持 3.14 延迟注解)、pydantic-settings 2.14+;Annotated/TypeAdapter/判别联合/model_json_schema 是 agent 工具 schema 的机制基础;v1→v2 对照 |
第 2 周 M8 两天的内容与练习;kb/aggregator/Notebook 的模型层 |
| 10 | 10-concurrency-asyncio-httpx-2026.md |
3.14 默认仍有 GIL(free-threading 为可选构建);新代码优先 TaskGroup + asyncio.timeout;3.14 新增 python -m asyncio ps/pstree;httpx 0.28 + tenacity 9 + respx 0.23 + pytest-asyncio(auto 模式);初学者直接学 asyncio、不学 anyio API |
第 3 周 M13–M15;aggregator 项目结构;所有 httpx 练习离线用 MockTransport |
| 11 | 11-fastapi-web-2026.md |
FastAPI 0.141.x(0.128.1+ 兼容 3.14 延迟注解;0.135.0 起内置 fastapi.sse)、Starlette 1.x;lifespan、Annotated 依赖注入、同步/异步端点的线程池差异、分层与 H20 端口转发 |
第 4 周 M17 三天 + M19;SSE 不再需要 sse-starlette;Notebook Service 的 F5 进度推送 |
| 12 | 12-logging-regex-files-sqlite-cli-pytest-git-2026.md |
logging 分层与 dictConfig(3.12+ 原生 QueueHandler)、Rich/structlog 选型;现代正则;原子写与 utf-8-sig;sqlite3 with conn + 参数化、python -m sqlite3;Typer 0.27 + Rich 15;pytest 9.1 fixture/mock/覆盖率;Git 日常命令、Conventional Commits、cnb.cool |
第 2 周 M9–M11、第 3 周 M12、Git 工作流;kb 项目的日志与存储 |
| 13 | 13-advanced-learning-resources-2026.md |
《流畅的 Python》2e、《Python 工匠》、Cosmic Python(免费在线)、官方 HOWTO 与各库官方文档为主线;Exercism/Advent of Code 补充;过时资源黑名单更新 | 各周"本周阅读"表;checklist.md 的后续路线 |
本机实测(第二批):Pydantic 2.13.5、pydantic-settings 2.15.0、FastAPI 0.141.1、Starlette 1.6.0、uvicorn 0.52.4、httpx 0.28.1、tenacity 9.1.4、respx 0.23.1、typer 0.27.2、rich 15.0.0、pytest-asyncio 1.4.0、pytest-cov 7.1.0、pytest-mock 3.15.1(uv sync 实装,2026-09-05)。
未采纳 / 有出入:报告 10 与多数资料默认"asyncio 版 HTTP 抓取应与线程池一样快",本机(Windows)实测 httpx 异步栈每请求 CPU 开销明显高于同步版,aggregator bench 中 asyncio 只有约 2×、线程池约 7×——记录在 projects/aggregator/README.md,并据此把验收标准从"≥5 倍"改为"线程 ≥5 倍、asyncio ≥2 倍"。
关键事实速查(全部经原文核实)¶
- Python 3.14.0:2025-10-07;3.14.4(本机):2026-04-07;3.14.7(最新):2026-08-05。
- Python 3.15.0rc2:2026-09-01;3.15.0 final:2026-10-01(PEP 790)。3.15 亮点:PEP 686 UTF-8 默认、PEP 810 lazy imports、PEP 814 frozendict、PEP 661 sentinel、PEP 799 profiling。
- 3.14 亮点:PEP 750 t-strings、PEP 649/749 注解延迟求值、PEP 734 子解释器、PEP 758
except A, B:、PEP 765 finally 警告、PEP 779 free-threading 正式支持、PEP 784 zstd、REPL 语法高亮;3.14.5 起增量 GC 回退。 - 官方中文文档已同步 3.14.7:
docs.python.org/zh-cn/3/。 - 本机:Scoop 安装的 CPython 3.14.4(
py --list看不到它是正常的);_pyrepl可用;locale.getpreferredencoding(False)= cp65001(本机开了系统级 UTF-8,学生机器通常是 cp936/GBK)。 - 工具:uv 0.9.21、pytest 9.1.1、ruff 0.16.6(
uv sync实装)。
已知局限¶
- 报告 02/04/05/06 中的部分引用(尤其学术论文的年份、期刊与具体数字)由子代理检索整理,主代理核对了结论方向与主要来源的存在性,未逐篇核对全文;引用时请以原论文为准。
- 报告 03 对 Real Python、菜鸟教程、Codewars 等"长期稳定站点"未重新抓取。
- 调研截止 2026-09-05 凌晨;Python 3.15 正式发布后,
encoding="utf-8"的必要性说明需要更新措辞(但写法本身仍然正确)。