GitHub 熱門:微軟新開源的 Python 靜態型別檢查器

Python開發者發表於2019-03-26

(給Python開發者加星標,提升Python技能


原創整理:Python開發者(id:PythonCoder)

昨天 GitHub 每日趨勢榜中,又出現了一個微軟新開源的專案:


https://github.com/Microsoft/pyright


微軟稱,建立 PyRight 專案,是為了解決現有 Python 靜態型別檢查器(比如 mypy)中的不足。


640?wx_fmt=png



速度


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。


推薦閱讀

(點選標題可跳轉閱讀)

GitHub 熱門:各大網站的 Python 爬蟲登入彙總

GitHub 熱門:機器學習 100 天(中文版)

GitHub 熱門專案:PyTorch 資源大全


覺得本文對你有幫助?請分享給更多人

關注「Python開發者」加星標,提升Python技能

640?wx_fmt=png

喜歡就點一下「好看」唄~

相關文章