跳转至

Pydantic Company

我们根据我认为导致 Pydantic 成功的原则创办了一家公司。

公司公告中了解更多信息.

安装

安装非常简单:

pip install pydantic

pydantic 除了 Python 3.7、3.8、3.9、3.10 或 3.11 和 typing-extensions 之外没有任何必需的依赖项。 如果您已经安装了 Python 3.7+ 和 pip,那么您就可以开始了。

Pydantic 也可以在 condaconda-forge 频道下获得:

conda install pydantic -c conda-forge

用 Cython 编译(Compiled with Cython)

pydantic 可以选择使用 cython 进行编译,这应该会带来 30-50% 的性能提升。

默认情况下,pip install 通过 PyPI 为 Linux、MacOS 和 64 位 Windows 提供优化的二进制文件。

如果您手动安装,请在安装 pydantic 之前安装 cython,编译应该会自动进行。

要测试 pydantic 是否编译运行:

import pydantic
print('compiled:', pydantic.compiled)

性能与打包尺寸的权衡(Performance vs package size trade-off)

编译的二进制文件会增加 Python 环境的大小。 如果出于某种原因你想减少 pydantic 安装的大小,你可以避免使用 pip --no-binary 选项。 确保 Cython 不在您的环境中,或者您设置了 SKIP_CYTHON 环境变量以避免重新编译 pydantic 库:

SKIP_CYTHON=1 pip install --no-binary pydantic pydantic

Note

pydantic 在这里有意重复, --no-binary pydantic 告诉 pip 你不需要 pydantic 的二进制文件,下一步 pydantic 告诉 pip 要安装哪个包。

或者,您可以使用自定义 构建选项 重新编译 pydantic,这需要 Cython 在重新编译 pydantic 之前安装的包:

CFLAGS="-Os -g0 -s" pip install \
  --no-binary pydantic \
  --global-option=build_ext \
  pydantic

可选依赖项(Optional dependencies)

pydantic 有两个可选的依赖项:

要将它们与 pydantic 一起安装:

pip install pydantic[email]
# or
pip install pydantic[dotenv]
# or just
pip install pydantic[email,dotenv]

当然,您也可以使用pip install email-validator和/或pip install python-dotenv手动安装这些要求。

从存储库安装(Install from repository)

如果您更喜欢直接从存储库安装 pydantic

pip install git+git://github.com/pydantic/pydantic@main#egg=pydantic
# or with extras
pip install git+git://github.com/pydantic/pydantic@main#egg=pydantic[email,dotenv]