Study OS

Búsqueda

Buscar en tus recursos

Encuentra pasajes dentro del material que ya subiste, con la coincidencia resaltada.

Resultados para "Pydantic"

Pydantic · Paragraph group 15

Son una buena opción si quieres una experiencia parecida a las dataclasses de la biblioteca estándar, pero con validación: ```python from pydantic import ConfigDict, field_validator from pydantic.dataclasses import dataclass @dataclass(config=ConfigDict(validate_assignment=True)) class DishDC: name…

Pydantic · Paragraph group 14

…Dataclasses de Pydantic Son una buena opción si quieres una experiencia parecida a las dataclasses de la biblioteca estándar, pero con validación:

Pydantic · Paragraph group 12

```python from pydantic import ValidationError try: Restaurant.model_validate(bad_data) except ValidationError as exc: print(exc) # formato legible para humanos print(exc.errors()) # lista de dicts, útil para logging o APIs ``` --- ## 7. Parsing y validación estricta Pydantic, por defecto…

Pydantic · Paragraph group 1

# Validación en tiempo de ejecución con Pydantic v2 > Guía de estudio para Pydantic v2.12.5 | Nivel | Intermedio | |:------|:-----------| | **Objetivo** | Entender por qué validar en tiempo de ejecución y cómo hacerlo bien con Pydantic v2 | | **Público** | Data scientists y desarrolladores Python…

Pydantic · Paragraph group 6

…Las herramientas de Pydantic v2 En Pydantic v2, el camino principal para modelar datos de entrada es `BaseModel`. Sigues trabajando con type hints normales de Python, pero la construcción del objeto incluye validación automática. | Herramienta | Para qué sirve | Cuándo usarla…

Pydantic · Paragraph group 11

…False, } Restaurant.model_validate(bad_data) # ValidationError con todos los campos que fallaron ``` Pydantic genera un `ValidationError` con información precisa sobre qué campo falló y por qué. Eso es mucho mejor que descubrir el problema mucho después, cuando otra parte…

Pydantic · Paragraph group 5

…Las herramientas de Pydantic v2

Pydantic · Paragraph group 13

…valida tipos sin crear un modelo nuevo `TypeAdapter` sirve para validar listas, uniones, diccionarios o cualquier otro tipo anotado sin necesidad de envolverlo en una clase `BaseModel`. ```python from pydantic import TypeAdapter adapter = TypeAdapter(list[Restaurant]) restaurants = adapter.validate_python…

Pydantic · Paragraph group 2

…El objetivo de Pydantic no es solo "revisar" datos, sino convertirlos en estructuras bien definidas y confiables. A partir de ese momento, el resto del programa puede trabajar con objetos mucho más seguros y expresivos. --- ## 2. Caso de estudio: un…

Pydantic · Paragraph group 17

…Código completo de referencia ```python from typing import Annotated, Literal import yaml from pydantic import ( BaseModel, ConfigDict, Field, PositiveInt, StringConstraints, TypeAdapter, ValidationError, field_validator, model_validator, ) # ── Tipos reutilizables ──────────────────────────────────────────────────────── NonEmptyStr = Annotated[ str, StringConstraints(strip_whitespace=True, min_length=1), ] RestaurantName = Annotated…

Pydantic · Paragraph group 9

…Modelo principal ```python from pydantic import field_validator class Restaurant(BaseModel): model_config = ConfigDict( extra="forbid", validate_assignment=True, ) name: RestaurantName owner: NonEmptyStr address: NonEmptyStr employees: Annotated[list[Employee], Field(min_length=2)] dishes: Annotated[list[Dish], Field(min_length…

Pydantic · Paragraph group 8

…pago, platos y empleados ```python from pydantic import BaseModel, ConfigDict, model_validator class BankDetails(BaseModel): model_config = ConfigDict(extra="forbid") routing_number: RoutingNumber account_number: DigitsOnly class PaymentDetails(BaseModel): model_config = ConfigDict(extra="forbid") mailing_address: NonEmptyStr | None = None bank…

Pydantic · Paragraph group 7

…Eso reduce repetición y vuelve el modelo más legible. ```python from typing import Annotated, Literal from pydantic import Field, PositiveInt, StringConstraints NonEmptyStr = Annotated[ str, StringConstraints(strip_whitespace=True, min_length=1), ] RestaurantName = Annotated[ str, StringConstraints( strip_whitespace=True, min_length…

Pydantic · Paragraph group 16

…Convierte el ejemplo principal a dataclasses de Pydantic y compáralo con `BaseModel`. 5. Activa `strict=True` en todo el modelo y analiza qué entradas que antes pasaban ahora fallan. 6. Añade tests unitarios para nombres duplicados de platos y para…