Skip to main content

decimal_schema

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

from decimal import Decimal
from pydantic_core import SchemaValidator, core_schema

schema = core_schema.decimal_schema(le=0.8, ge=0.2)
v = SchemaValidator(schema)
assert v.validate_python('0.5') == Decimal('0.5')
def decimal_schema(
allow_inf_nan: bool | None = None,
multiple_of: Decimal | None = None,
le: Decimal | None = None,
ge: Decimal | None = None,
lt: Decimal | None = None,
gt: Decimal | None = None,
max_digits: int | None = None,
decimal_places: int | None = None,
strict: bool | None = None,
ref: str | None = None,
metadata: dict[str, Any] | None = None,
serialization: SerSchema | None = None
) - > DecimalSchema

Returns a schema that matches a decimal value.

Parameters

NameTypeDescription
allow_inf_nan`boolNone` = None
multiple_of`DecimalNone` = None
le`DecimalNone` = None
ge`DecimalNone` = None
lt`DecimalNone` = None
gt`DecimalNone` = None
max_digits`intNone` = None
decimal_places`intNone` = None
strict`boolNone` = None
ref`strNone` = None
metadata`dict[str, Any]None` = None
serialization`SerSchemaNone` = None

Returns

TypeDescription
DecimalSchemaA dictionary-based schema definition for validating and serializing decimal values.