timedelta_schema
Returns a schema that matches a timedelta value, e.g.:
from datetime import timedelta
from pydantic_core import SchemaValidator, core_schema
schema = core_schema.timedelta_schema(le=timedelta(days=1), ge=timedelta(days=0))
v = SchemaValidator(schema)
assert v.validate_python(timedelta(hours=12)) == timedelta(hours=12)
def timedelta_schema(
strict: bool | None = None,
le: timedelta | None = None,
ge: timedelta | None = None,
lt: timedelta | None = None,
gt: timedelta | None = None,
microseconds_precision: Literal['truncate', 'error'] = 'truncate',
ref: str | None = None,
metadata: dict[str, Any] | None = None,
serialization: SerSchema | None = None
) - > TimedeltaSchema
Returns a schema that matches a timedelta value.
Parameters
| Name | Type | Description |
|---|---|---|
| strict | `bool | None` = None |
| le | `timedelta | None` = None |
| ge | `timedelta | None` = None |
| lt | `timedelta | None` = None |
| gt | `timedelta | None` = None |
| microseconds_precision | Literal['truncate', 'error'] = 'truncate' | The behavior when seconds have more than 6 digits or microseconds is too large |
| ref | `str | None` = None |
| metadata | `dict[str, Any] | None` = None |
| serialization | `SerSchema | None` = None |
Returns
| Type | Description |
|---|---|
TimedeltaSchema | A dictionary-based schema definition for validating and serializing timedelta objects. |