简介
- 本文将引导你完成使用 pydantic 进行数据验证的过程。Pydantic 是一个用 Rust 构建的 Python 库。
- 在开始之前,请确保你的环境中已安装 Python 和 Pydantic 库。请查看下面的 pydantic 安装命令。
创建模型
- 首先,我们需要导入并让我们的类继承自
pydantic.BaseModel以开始验证。在我们的示例中,我们将创建一个名为Person的类,它将包含姓名、年龄和一个电子邮件。
- 有了这个类,当我们实例化它时,pydantic 将验证参数
name和email是否为字符串,以及age是否为整数。
使用模型
- 现在我们已经创建了它,接下来我们将实例化该类。我们将创建一个包含数据的字典,并将其解包传入我们的类。
- 上面的示例不会引发任何错误,因为所有参数的类型都正确。现在我们将构造一份错误的数据,以确认我们的验证是否 生效。
- 在上面的示例中,它将引发
ValidationError错误,因为age需要是整数,不能以字符串形式提供。
创建 dataclass
- 你也可以使用 pydantic 创建 dataclass,它与标准的 Python dataclass 类似,但会像 BaseModel 一样进行验证。
- 如果我们向
age发送一个string,它将被转换为int。
Pydantic 支持递归验证,这意味着在验证嵌套模型时,它也会验证内部的
模型。如果某个类包含一个
Person 的列表 people: list[Person],它将检查列表中的每一项并将其转换为 Person。附加内容
- Pydantic 有一些附加功能,例如电子邮件验证和一个后备的时区包。要安装它们,你需要运行以下命令:
- 你可以通过运行以下命令将两者一起安装。
- Pydantic[email] 提供了一个用于处理电子邮件的类,对其进行规范化并验证
user@domain.tld格式。为此,pydantic 提供了EmailStr类来完成此验证。
你喜欢这篇文章吗?
- 我们精心创作了这些内容,只为提供尽可能好的帮助。 如果这篇文章对你有任何帮助,请支持我们的工作!留下你的评价!这能帮助我们了解什么对你最重要。
Google Reviews
在 Google Reviews 上留下你的评价。
Trustpilot
在 Trustpilot 上留下你的评价。

