GitHub 热门:微软新开源的 Python 静态类型检查器

昨天 GitHub 每日趋势榜中,又出现了一个微软新开源的项目:

https://github.com/Microsoft/pyright

微软称,创建 PyRight 项目,是为了解决现有 Python 静态类型检查器(比如 mypy)中的不足。

《GitHub 热门:微软新开源的 Python 静态类型检查器》

速度

PyRight 通常比 mypy 和其他用 Python 编写的类型检查器快 5 倍或更多。它适用于大型 Python 源代码库。它可以在“监视(Watch)”模式下运行,并在修改文件时执行快速增量更新。

不依赖于 Python 环境

PyRight 是用 TypeScript 编写的,在 node 中运行。它不需要安装 Python 环境或导入的第三方包。当与用 node 作为扩展运行时的 VS Code 编辑器一起使用时,这特别实用。

可配置性

PyRight 支持灵活的配置,提供对设置的粒度控制。可以为源库的不同子集指定不同的“执行环境”。每个环境都可以指定不同的 PYTHONPATH 设置、Python 语言版本和平台目标。

类型检查功能

PyRight 支持:

PEP 484 类型提示,包括泛型

PEP 526 变量注释的语法

PEP 544 结构子类型

函数返回值、实例变量、类变量和全局变量的类型推断

理解条件代码流结构(如if/else语句)的智能类型约束

命令行或语言服务

PyRight 包括了命令行工具,还有用于 VS Code 的语言服务器协议插件。

语言服务特性

PyRight 提供了以下语言服务功能:

显示类型信息的悬停工具提示

指向符号定义的链接

智能优先级排队“实时”反馈期间编辑

局限

PyRight 目前仅支持 Python 3.x,不计划支持 2.x。

    原文作者:我爱学python
    原文地址: https://www.jianshu.com/p/f7b9293e86a8
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞