Pylance:VSCode中对Python的快速、功能丰富的语言支持

2020-07-01 08:57:19

我们很兴奋地宣布Pylance,这是我们对Python的快速且功能丰富的语言支持!Pylance现在可以在Visual Studio代码市场上买到。

对于那些已经安装了Pylance的人来说,Pylance依赖于我们的核心Python扩展并构建在这种体验之上。

Pylance是一种新的Python语言服务器,它使用语言服务器协议与VS代码进行通信。

Pylance这个名字是对Monty Python的Lancelot的致敬,Lancelot是第一个在圣杯中回答养桥人问题的骑士。

为了提供改进的用户体验,我们创建了Pylance作为基于Microsoft的Pyright静态类型检查工具的全新语言服务器。Pylance利用类型存根(.pyi文件)和懒惰类型推断来提供高性能的开发体验。Pylance为您的Python IntelliSense体验增添了丰富的类型信息,帮助您编写更好、更快的代码。Pylance扩展还附带了流行模块的类型存根集合,以提供快速准确的自动完成和类型检查。

2018年,微软的Python团队发布了Python Language Server,将Visual Studio丰富的Python IntelliSense支持带到了Visual Studio Code中。自从我们最初发布以来,Python社区已经为我们提供了关于如何使Python Language Server的用户体验变得更好的宝贵反馈。在过去的几个月里,我们评估了如何使语言服务器性能更高,并使您能够编写最佳代码。

今天,我们很高兴地宣布作为新的Pylance语言服务器的这项工作的结果。

现在,类型信息在函数签名中可用,当悬停在符号上时,可以为您提供有用的信息,以确保您正确调用函数,从而提高您编写的代码的质量。

我们最需要的功能之一终于出现了!通过自动导入,您现在可以在已安装和标准库模块的完成列表中获得智能导入建议。

如果您对Python中的类型很感兴趣,可以通过将python.analysis.typeCheckingMode设置为Basic或Strict来尝试Pylance的类型检查模式。此设置使用Pyright的类型检查来分别对代码库应用一组基本或全面的规则。通过此模式生成的诊断信息可以帮助您提高代码质量,并帮助您更轻松地找到边缘案例。

Pylance本身支持多根工作区,这意味着您可以在同一个Visual Studio代码会话中打开多个文件夹,并且在每个文件夹中都具有Pylance功能。

新的Pylance扩展是对您熟悉和喜爱的VS代码的Python扩展的补充。如果您安装了Python扩展,您可以通过直接从Visual Studio代码市场下载该扩展来试用Pylance。在安装时,Python扩展将识别您已经安装了Pylance,并提示您选择它作为语言服务器。如果您还没有在VS代码中使用Python扩展,安装Pylance也会获取该扩展。

Pylance代表了对Visual Studio代码中Python体验的巨大改进,我们的团队花了几个月的时间致力于此。新的免费语言服务器提供了更高的性能和更多的功能。正因为如此,我们团队的重点将转移到Pylance来继续发展它。

短期内,在Visual Studio代码中编写Python时,您仍然可以使用Microsoft Python Language Server作为您选择的语言服务器。

我们的长期计划是将我们的Microsoft Python Language Server用户过渡到Pylance,并最终弃用并删除旧的语言服务器作为支持选项。

如果您对您的体验有任何疑问、意见或反馈,请在GitHub上与我们联系。

我们很高兴地宣布,面向Visual Studio代码的Python扩展版本现已于2020年6月下旬发布。在这个版本中,除了解决了53个问题之外,我们还开发了一些新功能,如按行运行和起始页。继续阅读,了解更多!

加入我们,参加下周二(5月19日)开始的虚拟活动Microsoft Build 2020。我们将演示Visual Studio代码和Azure中的新功能,使Python开发人员能够构建数据处理管道、Web应用程序和机器学习模型。