Skip to content

Latest commit

 

History

History
632 lines (440 loc) · 12.8 KB

File metadata and controls

632 lines (440 loc) · 12.8 KB

Python 学习路线

这份路线以两个目标为核心:

  • Web 开发
  • AI 应用开发

学习顺序遵循一个原则:先打牢 Python 基础,再补齐工程能力,然后分两条主线深入,最后通过项目把知识串起来。


一、总学习原则

1. 学习目标

你最终需要具备三类能力:

  • 能独立写出结构清晰、可维护的 Python 代码
  • 能使用 Python 开发 Web 服务、接口、数据库应用
  • 能使用 Python 构建 AI 应用,例如调用大模型、做 RAG、Agent、工作流系统

2. 学习方法

建议每个阶段都按下面的节奏学习:

  • 先理解概念
  • 再写最小示例
  • 然后做一个小练习
  • 最后整理笔记,输出自己的总结

建议不要只看知识点,要同步积累以下内容:

  • 语法笔记
  • 常见错误清单
  • 常用代码模板
  • 小项目仓库

3. 时间建议

如果你保持稳定学习,可以参考下面的节奏:

  • 第 1 阶段到第 3 阶段:4 到 6 周
  • 第 4 阶段到第 6 阶段:4 到 8 周
  • 第 7 阶段到第 9 阶段:6 到 10 周
  • 后续项目实战:长期持续

如果你每天能学 2 小时,这条路线大约需要 4 到 6 个月完成第一轮。


二、阶段式学习路线

第 1 阶段:Python 基础语法

学习目标

建立 Python 编程的最基本认知,做到能独立写脚本。

重点内容

  • 变量与命名规则
  • 基本数据类型:int、float、bool、str、None
  • 输入输出
  • 运算符
  • 条件判断:if、elif、else
  • 循环:for、while
  • break、continue、pass
  • 常见内置函数:print、len、type、range、enumerate、zip

学到什么程度算合格

  • 能写控制台小程序
  • 能看懂大部分基础示例代码
  • 能自己排查简单报错

练习建议

  • 猜数字游戏
  • 简单计算器
  • 九九乘法表
  • 学生成绩统计

第 2 阶段:核心数据结构与函数

学习目标

掌握 Python 中最常用的数据组织方式和函数抽象能力。

重点内容

  • 列表 list
  • 元组 tuple
  • 字典 dict
  • 集合 set
  • 字符串常用操作
  • 切片
  • 推导式:列表推导式、字典推导式、集合推导式
  • 函数定义与调用
  • 参数类型:位置参数、默认参数、关键字参数、可变参数
  • 返回值
  • 作用域
  • lambda

学到什么程度算合格

  • 能选择合适的数据结构解决问题
  • 能把重复逻辑提取成函数
  • 能写出结构比较清晰的脚本

练习建议

  • 词频统计
  • 通讯录管理程序
  • 待办事项列表程序
  • 文本字符分析工具

第 3 阶段:文件、异常、模块与面向对象

学习目标

具备写中等规模 Python 程序的能力。

重点内容

  • 文件读写
  • 路径处理
  • 异常处理:try、except、else、finally、raise
  • 模块与包
  • import 机制
  • 标准库常用模块:os、pathlib、json、datetime、collections、random
  • 类与对象
  • 封装、继承、多态
  • 魔术方法
  • dataclass 基础

学到什么程度算合格

  • 能把代码拆到多个文件中
  • 能处理常见异常
  • 能使用类组织业务逻辑

练习建议

  • 日志文件分析器
  • JSON 配置读取工具
  • 简单图书管理系统
  • 命令行记账程序

第 4 阶段:进阶 Python 能力

学习目标

理解 Python 的高级能力,为后续 Web 和 AI 打基础。

重点内容

  • 装饰器
  • 迭代器与生成器
  • 上下文管理器
  • 闭包
  • 匿名函数
  • typing 类型注解
  • 常见类型工具:Optional、Union、Literal、TypedDict、Protocol
  • 虚拟环境
  • 包管理
  • 项目结构设计
  • 日志 logging
  • 配置管理

建议补充

这阶段要开始接触现代 Python 开发习惯:

  • 使用 uv 或 venv 管理环境
  • 学会使用 pyproject.toml
  • 学会安装第三方库
  • 学会阅读官方文档

学到什么程度算合格

  • 能读懂主流开源项目中的基础代码结构
  • 能搭建一个有目录结构的 Python 项目
  • 能用类型注解提升代码可读性

练习建议

  • 自己实现一个装饰器库
  • 写一个支持日志和配置的命令行工具
  • 把旧脚本重构为一个小型工程项目

第 5 阶段:工程化与开发工具

学习目标

建立真实开发环境中的工程能力。

重点内容

  • Git 基础
  • 虚拟环境管理
  • pip、uv、requirements.txt、pyproject.toml
  • 代码格式化:black 或 ruff format
  • 代码检查:ruff
  • 单元测试:pytest
  • 调试技巧
  • 文档编写
  • 基础性能意识

必须掌握的工程习惯

  • 新项目先创建虚拟环境
  • 依赖要明确管理
  • 代码要分层,不要所有逻辑写在一个文件里
  • 重要功能要写测试
  • 改代码时尽量保持小步提交和持续验证

练习建议

  • 给前面的小项目补测试
  • 为项目增加日志、配置、异常处理
  • 把项目整理成可复用的目录结构

第 6 阶段:Web 开发基础

学习目标

理解 Web 开发的基本组成,能开发接口服务。

先补的基础知识

  • HTTP 基础
  • 请求方法:GET、POST、PUT、DELETE、PATCH
  • 状态码
  • 请求头与响应头
  • JSON
  • Cookie、Session、Token
  • 前后端分离基本概念
  • RESTful API 基础

Python Web 框架建议

你的方向是 Web 开发和 AI 应用开发,建议主学:

  • FastAPI

原因:

  • 现代化
  • 类型提示友好
  • 文档自动生成
  • 很适合接口服务与 AI 应用后端

如果后面需要更完整的后台系统,再了解:

  • Django

FastAPI 阶段重点内容

  • 路由
  • 请求参数
  • Pydantic 数据校验
  • 响应模型
  • 中间件
  • 依赖注入
  • 文件上传
  • 异常处理
  • 鉴权基础
  • 配置管理

配套必须学习

  • SQL 基础
  • ORM 基础,建议 SQLAlchemy
  • 数据库迁移,建议 Alembic
  • Redis 基础
  • 接口调试工具

学到什么程度算合格

  • 能独立写一个带数据库的 API 服务
  • 能设计增删改查接口
  • 能处理参数校验、异常、日志

项目建议

  • 博客系统后端 API
  • 用户登录注册系统
  • 待办事项管理后端
  • 文件上传与下载服务

第 7 阶段:异步编程与高并发基础

学习目标

理解 Python 在 Web 服务和 AI 调用场景中的异步能力。

重点内容

  • 同步与异步区别
  • asyncio 基础
  • async、await
  • 协程
  • task
  • gather
  • 超时控制
  • 异步 HTTP 请求
  • 异步数据库访问的基本概念

为什么这一阶段重要

因为你后面做的两个方向都会频繁用到:

  • Web 接口并发处理
  • 调用外部大模型 API
  • 流式响应
  • 多任务编排

练习建议

  • 异步爬取多个页面
  • 并发调用多个接口
  • 写一个支持流式输出的聊天接口

第 8 阶段:AI 应用开发基础

学习目标

从“会调用模型”提升到“会做 AI 应用”。

先学的 AI 应用基础知识

  • 大模型 API 调用方式
  • prompt 基础
  • system、user、assistant 消息结构
  • token 基础概念
  • 温度、上下文窗口、流式输出
  • 向量、Embedding 基础概念
  • RAG 基础概念
  • Agent 基础概念
  • 工作流基础概念

Python 侧重点内容

  • requests 或 httpx 调用模型 API
  • 异步调用模型接口
  • 数据清洗与文本切分
  • JSON 结构化输出处理
  • 重试机制
  • 限流与超时
  • 日志与监控

推荐学习库

  • openai 或兼容 OpenAI 协议的客户端
  • httpx
  • pydantic
  • fastapi
  • langchain
  • langgraph

学习顺序建议

  1. 先学如何直接调用模型 API
  2. 再学 Prompt 封装与结构化输出
  3. 再学 RAG
  4. 再学 Agent 和工作流
  5. 最后学部署、监控、评估

项目建议

  • 聊天助手 API
  • 文档问答系统
  • 网页内容总结工具
  • 自动分类与信息提取服务

第 9 阶段:RAG 与 Agent 系统

学习目标

构建真正可用的 AI 应用系统,而不是简单聊天页面。

RAG 方向重点

  • 文档加载
  • 文本切分
  • Embedding
  • 向量数据库
  • 检索召回
  • 重排基础概念
  • Prompt 组装
  • 上下文控制
  • 引用来源返回

Agent 方向重点

  • 工具调用
  • 多步骤任务拆分
  • 状态管理
  • 工作流编排
  • 人工确认节点
  • 错误恢复
  • 长任务执行

必须注意的工程问题

  • 不要只关注“能跑通”,要关注稳定性
  • 要处理超时、重试、日志、缓存、限流
  • 要考虑提示词版本管理
  • 要考虑评估指标和效果回归

项目建议

  • 本地知识库问答系统
  • 企业文档助手
  • 带工具调用的智能助理
  • 多步骤任务执行 Agent

第 10 阶段:部署、运维与生产实践

学习目标

让你写的 Web 服务和 AI 服务真正可上线运行。

重点内容

  • Linux 基础命令
  • 环境变量
  • Docker 基础
  • 部署 FastAPI 服务
  • Nginx 基础
  • 进程管理
  • 日志采集
  • 基础监控
  • 数据库备份意识
  • 安全基础:鉴权、权限、输入校验

AI 应用特有的生产问题

  • 成本控制
  • 接口限额
  • 缓存策略
  • 敏感信息处理
  • 结果评估与人工兜底

项目建议

  • 把前面的 API 项目部署到云服务器
  • 给 AI 应用加日志、缓存、鉴权
  • 给系统增加管理员后台或监控面板

三、推荐学习顺序

如果你要按最适合你的方向来走,建议顺序如下:

  1. Python 基础语法
  2. 数据结构与函数
  3. 文件、异常、模块、面向对象
  4. 进阶 Python 与工程化
  5. HTTP 与数据库基础
  6. FastAPI 开发
  7. asyncio 与异步编程
  8. 模型 API 调用与 AI 应用基础
  9. RAG 系统
  10. Agent 与工作流
  11. 部署与生产实践

这个顺序比“先学很多算法再学开发”更适合你的目标。


四、每个阶段的产出要求

你不能只学不做。建议每个阶段都必须有输出。

基础阶段产出

  • 20 到 30 个小练习
  • 1 份基础语法笔记
  • 1 份常见报错总结

工程阶段产出

  • 2 到 3 个小型项目
  • 1 套自己的项目模板
  • pytest 测试样例

Web 阶段产出

  • 1 个完整 FastAPI 项目
  • 数据库表设计
  • 接口文档

AI 阶段产出

  • 1 个模型调用项目
  • 1 个 RAG 项目
  • 1 个 Agent 或工作流项目

五、建议项目路线

为了让学习更扎实,建议项目按下面顺序做:

  1. 命令行记账程序
  2. 通讯录管理系统
  3. 文件分析工具
  4. FastAPI 待办事项 API
  5. 登录注册与权限管理 API
  6. 文档问答系统
  7. 聊天助手后端
  8. RAG 知识库系统
  9. Agent 工作流项目

六、需要重点补的通用基础

除了 Python 本身,你还要同步补这些内容:

  • SQL
  • HTTP
  • JSON
  • Linux 基础命令
  • Git
  • Docker
  • 计算机网络基础
  • 数据库基础

如果这些不补,后面做 Web 和 AI 会卡得很明显。


七、学习资料方向建议

你在选择资料时,优先顺序建议是:

  1. 官方文档
  2. 高质量教程
  3. 开源项目源码
  4. 视频课程作为辅助

尤其是以下内容,要尽早养成看官方文档的习惯:

  • Python 官方文档
  • FastAPI 官方文档
  • Pydantic 官方文档
  • SQLAlchemy 官方文档
  • 你所使用的大模型平台文档
  • LangChain 和 LangGraph 文档

八、不建议的学习误区

1. 只看视频不写代码

如果不亲手写,知识不会真正进入你的能力体系。

2. 一开始就追求复杂框架

先把 Python、HTTP、数据库、异步这些基础补齐,再进入大型框架和复杂系统。

3. 只会调模型,不懂工程化

AI 应用开发不是只会写 prompt,还要会接口设计、数据处理、异常控制、部署和评估。

4. 学得太散

你现在最好的路线不是广撒网,而是围绕两个目标持续深入:

  • Python Web 开发
  • Python AI 应用开发

九、你的最优学习主线

如果只给你一条最适合的主线,可以直接按下面执行:

  1. 用 3 到 4 周学完 Python 基础与核心语法
  2. 用 2 到 3 周掌握模块、异常、面向对象、文件处理
  3. 用 2 周补工程化能力:环境、依赖、测试、日志、类型注解
  4. 用 3 到 4 周专攻 FastAPI、SQLAlchemy、MySQL 或 PostgreSQL
  5. 用 1 到 2 周专门学习 asyncio 和异步接口调用
  6. 用 2 周学习模型 API 调用、Prompt、结构化输出
  7. 用 2 到 4 周做 RAG 项目
  8. 用 2 到 4 周做 Agent 或工作流项目
  9. 持续做部署、优化、评估

十、执行建议

为了让路线真正落地,建议你这样执行:

  • 每学一个知识点,马上写一个最小示例
  • 每完成一个阶段,做一个小项目
  • 每周至少复盘一次,整理自己不会的点
  • 每月完成一个稍完整的项目
  • 学 AI 时不要脱离 Web 服务能力,因为最终大多数 AI 应用都需要服务化

如果你严格按照这条路线走,最后会形成一个很实用的能力组合:

  • Python 基础扎实
  • 会做 API 服务
  • 会接数据库和缓存
  • 会调用大模型
  • 会做 RAG 和 Agent
  • 会把应用部署出去

这会比单纯学语法更接近真实岗位和真实项目需求。