Buenas Prácticas de Sugerencias de Tipos
Los tipos deben reducir incidentes sin ahogar al equipo en formalidades. Estas reglas enfocan el esfuerzo donde el análisis estático previene errores reales en producción.
Busca en todas las páginas de la documentación
Los tipos deben reducir incidentes sin ahogar al equipo en formalidades. Estas reglas enfocan el esfuerzo donde el análisis estático previene errores reales en producción.
Any crezca o las anulaciones estrictas se multipliquen.list[str], no list sin formato. Los genéricos sin formato anulan la comprobación.X | Y en Python 3.10+. Consistente con la base de código 3.14.collections.abc en parámetros (Sequence, Mapping). Acepta entradas de solo lectura más amplias.TypedDict/NamedTuple para filas JSON; dataclass para objetos de dominio. Coincide con la forma en tiempo de ejecución.Literal y StrEnum para conjuntos fijos de cadenas. Previene errores tipográficos en el momento de la comprobación.Any - usa object cuando sea verdaderamente desconocido y luego refina. Rastrea Any con una regla de linting cuando sea posible.types-* para dependencias sin tipar. requests, pyyaml, etc.warn_unused_ignores y warn_return_any. Limpia las ignoraciones obsoletas rápidamente.ignore_errors global. Cuarentena con fechas de finalización.typing.cast para arreglar la lógica. cast solo silencia el verificador.isinstance / match después de comprobaciones opcionales. Patrón if x is not None.TypedDict. Primero esquema o Pydantic.type: ignore es inevitable con el código de error y el enlace del ticket.ignore_errors debe tener propietario y fecha.TypeVar) cuando la utilidad preserve los tipos de entrada. No Any de entrada/salida.@overload con moderación para dependencias de firma reales. No para sugerencias cosméticas.APIs públicas sí; locales triviales opcionales a menos que mypy necesite ayuda para inferir.
Pydantic añade validación en tiempo de ejecución; mantén las sugerencias en funciones puras para la cobertura de mypy.
Menor prioridad que el código fuente; tipa las pruebas cuando aclaran fixtures o previenen errores de copiar y pegar.
Usa stubs de biblioteca y dtypes precisos donde el ROI sea claro; no bloquees el envío por genéricos ndarray perfectos.
Los tipos mapeados estilo 2.0 están mejorando - sigue los stubs/plugins de sqlalchemy en la configuración de mypy.
Revierte la anulación al nivel anterior; avanza en porciones semanales, no en hazañas heroicas.
ADR corto: elección del verificador, cronograma estricto, límites de Pydantic, Protocolo para puertos.
Algunos equipos limitan el recuento de Any mediante un script en CI - gobernanza avanzada opcional.
Bien para el desarrollo; aún se necesita una puerta de enlace de CI para que los compañeros de equipo sin Pylance obtengan la misma seguridad.
Modelos HTTP tipados + firmas de funciones de servicio - detecta la mayoría de los errores de tipo de producción de forma temprana.
Versiones de la pila: Esta página fue escrita para Python 3.14.0 (3.14 estable, 3.13 de mantenimiento), FastAPI 0.115+, Django 5.2, Flask 3.1, Pydantic 2, PyTorch 2.6+, pandas 2.2+, Polars 1.x, ruff 0.9+, y uv 0.6+.
Revisado por Chris St. John·Última actualización: 16 jul 2026