Python の静的型付け

注釈

このリポジトリは第三者による日本語訳です。 日本語訳は Python Software Foundation とは一切関係ありません。 このリポジトリは PSF ライセンスに準じて公開しています。

https://github.com/MtkN1/typing

ガイド

リファレンス

参考

https://mypy.readthedocs.io/ のドキュメントは比較的アクセスしやすく、完全です。

仕様

索引とテーブル

ディスカッションとサポート

型関連ツール

型チェッカー

  • mypy, 型チェッカーのリファレンス実装。

  • pyre, OCaml で書かれ、パフォーマンスに最適化された型チェッカー。

  • pyright, 速度を重視した型チェッカー。

  • pytype, 型注釈のないコードの型をチェックおよび推論する型チェッカー。

開発環境

  • PyCharm, 型スタブを型チェックとコード補完の両方にサポートする IDE。

  • Visual Studio Code, mypy、pyright、または Pylance 拡張機能を使用して型チェックをサポートするコードエディタ。

リンターとフォーマッター

  • black, 型スタブファイルをサポートするコードフォーマッター。

  • flake8-pyi, 型スタブをサポートする flake8 リンターのプラグイン。

  • ruff, ほとんどの flake8-pyi ルールをサポートする速度重視のリンター。

型ヒントとスタブの統合

  • autotyping, コンテキストから単純な型を推論し、それらをインライン型ヒントとして挿入するツール。

  • merge-pyi, .pyi シグネチャを Python ソースコードのインライン型ヒントとして統合する libCSTApplyTypeAnnotationsVisitor の薄いラッパー。

型に関する PEP

すべての型関連の PEP のリストについては、https://peps.python.org/topic/typing を参照してください。