【Python】VSCodeの拡張機能で静的型付け言語に近い感覚を出したい

この記事は約3分で読めます。

私たちエンジニアは「実行して初めてエラーになる」まで待ちたくありません。コードを書いている最中に「あ、型が違うよ」とエディタに怒ってほしいです。

VS Codeを使って、PythonをJavaやC#のような「静的型付け言語に近い感覚(コンパイルエラーが出る感覚)」で書くための、現代的(モダン)かつ鉄板の構成を紹介します。

この2つを入れるだけで、開発体験が劇的に変わります。


1. 必須の脳みそ: Pylance (パイランス)

Microsoft公式のPython拡張機能を入れると、自動でついてくることが多いですが、これが型チェックの「本体」です。

  • 何をしてくれるか:

    • def func(a: int): と定義したのに func("hello") と書くと、実行前に赤線(エラー)を出してくれます。

    • 変数の型推論、定義へのジャンプなどが爆速になります。

  • 【超重要】設定を変える:

    デフォルトだと設定が優しすぎる(off)ため、型チェックが効きません。以下の設定をONにしてください。

    1. VS Codeの設定を開く (Ctrl + , or Cmd + ,)

    2. 検索バーに type checking mode と入力

    3. Python > Analysis: Type Checking Modeoff から basic に変更してください。

      • Basic: 一般的な型ミスを指摘してくれます(推奨)。

      • Strict: 厳格にチェックします(既存プロジェクトでやるとエラーだらけになるので、慣れてからでOK)。

※チーム開発では.vscodeを共有することで、わざわざ各メンバーが手動で設定する必要がなくなります。別日の記事で書きたいと思います。

2. 爆速の守護神: Ruff (ラフ)

今、Python界隈で最もホットな「モダン」ツールです。これまで Flake8(構文チェック)や isort(import順序整理)、Black(フォーマッタ)など複数のツールを組み合わせていたのを、これ1つで、しかも100倍速くやってくれます。

  • 何をしてくれるか:

    • 使っていない変数の警告 (Unused variable)

    • スタイルの統一

    • Import文の自動整列

  • 導入方法:

    • VS Codeの拡張機能マーケットプレイスで「Ruff」と検索してインストールするだけです。

    • 保存時に自動修正する設定(Format on Save)を入れておくと幸せになれます。


3. (参考) 実行時にも厳格に守りたいなら: Pydantic

これはVS Codeの拡張機能ではなく、Pythonのライブラリです。

型ヒントはあくまで「開発時のチェック」ですが、Pydantic を使うと、「実行時にデータが入ってきた瞬間」に型チェックをしてくれます。

Python

「外部からデータを受け取る処理」では、このライブラリを使って入り口でガードするのが現在のベストプラクティスです。


まとめ:最低限やると良いこと

まずは以下を確認してみてください。

  1. 拡張機能: Python (Microsoft公式) と Ruff (Astral Software) が入っているか確認。

  2. 設定: Type Checking Modebasic に設定。

これで、型が違うコードを書くとすぐに赤線が出るようになります。

タイトルとURLをコピーしました