Verificador de tipos en tiempo de ejecución para Python que valida anotaciones PEP 484 en funciones, objetos arbitrarios y variables locales.
beartype/beartype
Comprobador de tipos en tiempo de ejecución, escrito en Python puro, que aplica las anotaciones de tipo de PEP en funciones, clases y variables con un costo mínimo.
- Estrellas
- 3,512
- Forks
- 94
- Issues abiertos
- 131
- Último commit
- ayer
¿Qué es?
Beartype es un comprobador de tipos en tiempo de ejecución para Python que valida los valores según las anotaciones de tipo estándar cuando se ejecuta el código. Funciona decorando funciones y clases individuales con @beartype o instalando un hook de importación mediante beartype.claw, que comprueba todas las funciones, clases y asignaciones de variables anotadas de un paquete. Las infracciones generan excepciones descriptivas, y el proyecto se puede configurar para emitir advertencias en su lugar cuando se trate de código ajeno a su paquete.
Además de los decoradores, beartype ofrece beartype.door para comprobar objetos arbitrarios frente a una anotación de tipo en cualquier momento, de forma similar a isinstance, y beartype.vale para crear validadores con restricciones basadas en lambda mediante Annotated. También incluye beartype.bite, que infiere anotaciones de tipo a partir de objetos existentes. El proyecto está implementado en Python puro, no tiene dependencias en tiempo de ejecución y es compatible con todas las versiones de Python que siguen en desarrollo activo.
Funciones clave
- 01Comprueba en tiempo de ejecución los parámetros y valores de retorno de funciones y métodos frente a las anotaciones de tipo de PEP.
- 02Proporciona un hook de importación que comprueba los tipos de todo un paquete con una sola llamada.
- 03Ofrece beartype.door para comprobaciones puntuales con is_bearable y die_if_unbearable.
- 04Admite validadores personalizados creados a partir de restricciones lambda mediante Annotated.
- 05No tiene dependencias en tiempo de ejecución y está escrito en Python puro.
Casos de uso
- Añadir seguridad de tipos en tiempo de ejecución a una biblioteca o aplicación Python sin reescribir el código existente.
- Detectar infracciones de tipos en su propio paquete y emitir advertencias en lugar de errores para problemas en dependencias de terceros.
- Validar estructuras de datos en tiempo de ejecución, como entradas de API, según las anotaciones de tipo existentes.
Inicio rápido
- 1
Instala beartype con pip
pip install beartype - 2
Activa beartype para tu paquete añadiendo esto al módulo __init__ del paquete
from beartype.claw import beartype_this_package; beartype_this_package()
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es beartype?
- Comprobador de tipos en tiempo de ejecución, escrito en Python puro, que aplica las anotaciones de tipo de PEP en funciones, clases y variables con un costo mínimo. Beartype es un comprobador de tipos en tiempo de ejecución para Python que valida los valores según las anotaciones de tipo estándar cuando se ejecuta el código. Funciona decorando funciones y clases individuales con @beartype o instalando un hook de importación mediante beartype.claw, que comprueba todas las funciones, clases y asignaciones de variables anotadas de un paquete. Las infracciones generan excepciones descriptivas, y el proyecto se puede configurar para emitir advertencias en su lugar cuando se trate de código ajeno a su paquete.
- ¿beartype es gratuito? ¿Qué licencia tiene?
- beartype es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿beartype sigue mantenido?
- Mantenimiento activo. El último commit de beartype fue el 6 nov 2026.
- ¿Para qué puedo usar beartype?
- Añadir seguridad de tipos en tiempo de ejecución a una biblioteca o aplicación Python sin reescribir el código existente. Detectar infracciones de tipos en su propio paquete y emitir advertencias en lugar de errores para problemas en dependencias de terceros. Validar estructuras de datos en tiempo de ejecución, como entradas de API, según las anotaciones de tipo existentes.
- ¿Cómo se instala beartype?
- Instala beartype con pip: pip install beartype Activa beartype para tu paquete añadiendo esto al módulo __init__ del paquete: from beartype.claw import beartype_this_package; beartype_this_package()
- ¿Dónde consigo beartype?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/beartype/beartype
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Analizador estático de tipos para Python que detecta errores en el código mediante anotaciones PEP 484, sin ejecutarlo.
Un superconjunto tipado de JavaScript que añade tipos estáticos opcionales y se compila a JavaScript legible y basado en estándares.
Verificador estático de tipos para Python basado en estándares, con herramienta de línea de comandos y extensión para Visual Studio Code, diseñado para grandes bases de código.
Biblioteca de Python para crear aplicaciones CLI a partir de anotaciones de tipos estándar, con ayuda, validación y autocompletado de shell automáticos.
Un plugin de pytest que ejecuta el comprobador estático de tipos mypy en los archivos fuente durante las pruebas de pytest.