Pydantic 2:数据模型小课
本课程使用 Python 3.12 和 Pydantic 2。从文章数据出发,依次学习模型定义、字段规则、校验、序列化和配置,最后用综合案例串起完整的数据处理流程。
环境准备
先安装 uv。学员只需打开课程网页,不需要下载课程仓库;在自己的电脑上创建练习目录:
bash
mkdir .code
cd .code
uv init --bare --no-workspace --name pydantic2-model-course --python 3.12
uv add --python 3.12 "pydantic==2.13.5" "pydantic-settings==2.15.0"
uv run python -c "import sys, pydantic, pydantic_settings; print(sys.version.split()[0], pydantic.__version__, pydantic_settings.__version__)"uv 会在本地生成 pyproject.toml、锁文件和虚拟环境。课程使用 Python 3.12;上面的依赖版本与课程示例一致。后面的命令都在你创建的 .code 目录中运行。
每章的代码演示会逐步解释知识点。要运行某个示例,把页面上的完整代码复制到本地 .code/main.py,然后执行:
bash
uv run python main.py切换示例时,用新代码覆盖 main.py。第 12 章的配置示例还要把页面上的 .env 内容保存为本地 .code/.env,与 main.py 放在一起。
第 8 章前两个脚本故意让错误输入抛出 ValidationError,用于观察报错;它们以非零状态退出是预期现象。
课程目录
- Pydantic 与输入校验
- BaseModel 与模型对象
- 字段类型与可空值
- Field 字段约束与默认值
- 模型校验与错误处理
- 嵌套模型与错误定位
- field_validator 自定义字段校验
- model_validator 跨字段校验
- 模型导出与字段筛选
- 字段序列化与输出格式
- 模型配置与输入行为
- Settings 应用配置
- 常见数据场景实践
- 文章数据处理综合实战
学习顺序建议按章节推进,最后用综合练习串联模型校验、错误处理和数据导出。