jsonschema如何将原始json字符串映射为Python对象?

2 投票
1 回答
575 浏览
提问于 2025-04-18 18:14

什么是 jsonschema,它是怎么工作的呢?

我猜测它的工作原理是把看到的原始 JSON 字符串转换成 Python 中的某种类型,这种类型在 jsonschema.Draft4Validator.DEFAULT_TYPES 中列出,然后检查是否能成功转换。如果转换成功,那么就可以进行验证了。

如果真是这样的话,那么在 Python 的 DEFAULT_TYPES 中,每种类型都应该有一个“从字符串转换”的方法,用来把字符串转换成那种类型。

我对 jsonschema 的理解是对的吗?

1 个回答

2

不行。jsonschema 是在反序列化后的 JSON 上操作,也就是在 Python 对象上,而不是字符串。所以它的工作原理其实很简单,每种字符串类型都对应一组有效的 Python 类型,验证一个东西是否是正确的类型其实就是用 isinstance 来检查。

你说得对,DEFAULT_TYPES 是用来做这个映射的默认设置。

撰写回答