据我了解 Pydantic 和 Json Schemas 提供类似的功能 - 两者都可以用于验证数据输出。
我有兴趣了解使用每一种的优缺点。我感兴趣的几个问题:
它们之间的准确度有什么差异吗?
就开发时间而言,哪一个实施起来更快?
两者在功能上有什么区别吗?即一个功能支持,另一个不支持?
这些只是我正在考虑的问题的例子,我也很想了解更多关于优点和缺点的信息。
虽然 Pydantic 和 Json Schema 都用于验证数据是否符合某种格式,但它们服务于不同的用例:
您可以在多种语言中找到许多Json Schema 验证器的实现这些是您可能想要与 pydantic 进行 1:1 比较的工具。但是,pydantic 理解 Json Schema:您可以从 Json Schema 创建 pydantic 代码,还可以将 pydantic 定义导出到 Json Schema。从功能角度来看它们应该是等效的。您可以在迂腐的文档中找到类型映射。
那么,您应该使用哪个?您的用例很重要,但很可能不是非此即彼。如果您只使用 python 并且更喜欢直接在 python 中定义模式,那么肯定会选择 pydantic。如果您需要跨语言交换模式或想要处理其他地方生成的模式,您可以在顶部添加 Json Schema,pydantic 将能够处理它。