Pydantic 是用 Python 类型注解定义数据模型和设置的数据校验库,v2 版本提供快速、可扩展的校验和自动类型转换。
主要能力:用 BaseModel 定义模型,字段通过 Field 设置别名、范围、长度等约束;支持 Optional、list、Annotated、EmailStr、HttpUrl、SecretStr 等类型;模型配置 ConfigDict 可控制严格模式、不可变、赋值时校验、禁止多余字段、序列化枚举值等;用 @field_validator 和 @model_validator 实现字段级与跨字段校验;model_validate、model_validate_json 从字典或 JSON 构建实例;model_dump、model_dump_json 控制序列化、排除或包含字段、使用别名;field_serializer 与 PlainSerializer 自定义输出;支持嵌套模型和枚举;TypeAdapter 可对单独类型校验并生成 JSON Schema。
使用方式:安装 uv add pydantic,Python 3.8+;EmailStr 需 uv add pydantic[email],HttpUrl 需 uv add pydantic[url],扩展类型支持需 uv add pydantic[typing-extensions]。构建模型时以关键字传参,校验失败会抛出 ValidationError,可遍历 errors() 获取位置与消息。
适用场景:API 请求/响应数据校验、配置管理、结构化数据解析与序列化、JSON Schema 生成。
限制:资料未提供性能基准、与其他校验库的对比、具体版本兼容性细节或生产环境部署建议,这些内容暂未提供。