typestar

Modelos de Pydantic en Python

Un modelo valida y convierte al construirse, desde una clase de anotaciones.

from pydantic import BaseModel, ValidationError


class Intento(BaseModel):
    lang: str
    tpm: float
    stars: int = 1


intento = Intento(lang="python", tpm="104.5", stars=3)
print(intento.tpm, type(intento.tpm).__name__)
print(intento.model_dump())
print(intento.model_dump_json())

try:
    Intento(lang="rust", tpm="rapido")
except ValidationError as exc:
    print(exc.error_count(), exc.errors()[0]["loc"], exc.errors()[0]["type"])

Cómo funciona

  1. Los tipos se aplican: una cadena numérica se vuelve un int.
  2. model_dump y model_dump_json lo serializan de vuelta.
  3. Un valor malo lanza ValidationError con el campo nombrado.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
18
Caracteres a escribir
422
Tokens
131
Ritmo de tres estrellas
105 tpm

Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 75 segundos.

Escribe este fragmento

Paso 1 de 5 en Modelos de Pydantic; paso 1 de 19 en Servicios web y acceso a datos.

Siguiente →