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.
microsoft/pyright
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.
- Estrellas
- 15,732
- Forks
- 1,841
- Issues abiertos
- 384
- Último commit
- anteayer
¿Qué es?
Pyright es un verificador estático de tipos para Python que analiza el código fuente sin ejecutarlo e informa de errores de tipos según los estándares de tipado de Python. Está diseñado para ofrecer un alto rendimiento y funcionar con grandes bases de código Python.
Se distribuye como herramienta de línea de comandos y como extensión para Visual Studio Code. El proyecto también ofrece Pyright Playground, disponible en el navegador, para probar fragmentos de código, y publica un benchmark semanal que lo compara con otros verificadores de tipos para Python, junto con un historial de versiones que incluye el tiempo de ejecución por paquete y el uso máximo de memoria.
En entornos donde el directorio temporal del sistema operativo no existe o es de solo lectura, como en algunas configuraciones remotas o de servidor, se puede cambiar la ruta raíz del directorio temporal con la variable de entorno PYRIGHT_TMPDIR.
Funciones clave
- 01Verificación estática de tipos del código fuente de Python según los estándares.
- 02Herramienta de línea de comandos para ejecutar verificaciones en CI o de forma local.
- 03Extensión para Visual Studio Code que ofrece información sobre tipos directamente en el editor.
- 04Playground en el navegador para probar fragmentos de código sin instalar nada.
- 05Variable de entorno para cambiar el directorio temporal en sistemas con restricciones.
Casos de uso
- Añadir verificación de tipos a una gran base de código Python en pipelines de CI.
- Obtener información sobre tipos mientras se edita código Python en Visual Studio Code.
- Comparar el rendimiento de verificadores de tipos en proyectos Python.
Antes de usarlo
- No se pudo identificar automáticamente la licencia a partir de los metadatos del repositorio. Revisa el archivo de licencia antes de usarlo.
Temas
Preguntas frecuentes
- ¿Qué es pyright?
- 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. Pyright es un verificador estático de tipos para Python que analiza el código fuente sin ejecutarlo e informa de errores de tipos según los estándares de tipado de Python. Está diseñado para ofrecer un alto rendimiento y funcionar con grandes bases de código Python.
- ¿pyright es gratuito? ¿Qué licencia tiene?
- pyright es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿pyright sigue mantenido?
- Mantenimiento activo. El último commit de pyright fue el 4 nov 2026.
- ¿Para qué puedo usar pyright?
- Añadir verificación de tipos a una gran base de código Python en pipelines de CI. Obtener información sobre tipos mientras se edita código Python en Visual Studio Code. Comparar el rendimiento de verificadores de tipos en proyectos Python.
- ¿Dónde consigo pyright?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/microsoft/pyright
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Verificador de tipos en tiempo de ejecución para Python que valida anotaciones PEP 484 en funciones, objetos arbitrarios y variables locales.
Herramientas de lenguaje para Vue basadas en Volar.js, con servidor de lenguaje para editores, el verificador de tipos vue-tsc y paquetes relacionados.
Un plugin de pytest que ejecuta el comprobador estático de tipos mypy en los archivos fuente durante las pruebas de pytest.
Herramienta de análisis estático para PHP que detecta errores en el código sin ejecutarlo.
Analizador estático para Ruby que infiere tipos a partir del código sin anotaciones y busca reportar solo errores concluyentes, como métodos no definidos y receptores nil.