Skip to main content

dict_schema

Returns a schema that matches a dict value, e.g.:

from pydantic_core import SchemaValidator, core_schema

schema = core_schema.dict_schema(
keys_schema=core_schema.str_schema(), values_schema=core_schema.int_schema()
)
v = SchemaValidator(schema)
assert v.validate_python({'a': '1', 'b': 2}) == {'a': 1, 'b': 2}
def dict_schema(
keys_schema: CoreSchema | None = None,
values_schema: CoreSchema | None = None,
min_length: int | None = None,
max_length: int | None = None,
fail_fast: bool | None = None,
strict: bool | None = None,
ref: str | None = None,
metadata: dict[str, Any] | None = None,
serialization: SerSchema | None = None
) - > DictSchema

Returns a schema that matches a dict value.

Parameters

NameTypeDescription
keys_schema`CoreSchemaNone` = None
values_schema`CoreSchemaNone` = None
min_length`intNone` = None
max_length`intNone` = None
fail_fast`boolNone` = None
strict`boolNone` = None
ref`strNone` = None
metadata`dict[str, Any]None` = None
serialization`SerSchemaNone` = None

Returns

TypeDescription
DictSchemaA dictionary schema definition for use in Pydantic-core validation and serialization.