Visual Studio Code での Python
Visual Studio Code での Python 作業は、Microsoft Python 拡張機能を使用すると、シンプルで楽しく、生産的です。この拡張機能は VS Code を優れた Python エディターにし、さまざまな Python インタープリターを使用するあらゆるオペレーティングシステムで動作します。VS Code のすべての機能を活用して、自動補完と IntelliSense、リンティング、デバッグ、単体テストに加え、仮想環境や conda 環境を含む Python 環境を簡単に切り替える機能を提供します。
この記事では、VS Code 用 Python 拡張機能のさまざまな機能の概要のみを説明します。コードの編集、実行、デバッグの詳細については、下のボタンを使用してください。
Python と Python 拡張機能のインストール
チュートリアルでは、Python のインストールと拡張機能の使用について説明します。Python インタープリターは拡張機能とは別に自分でインストールする必要があります。素早くインストールするには、python.org から Python を使用し、VS Code Marketplace から拡張機能をインストールします。
注: Python 開発を始めるのに役立つ、便利な拡張機能、設定、Python コードスニペットを含むPython プロファイルテンプレートを使用できます。
Python のバージョンをインストールしたら、Python: インタープリターの選択 コマンドを使用して選択します。VS Code が目的のインタープリターを自動的に見つけられない場合は、環境 - インタープリターを手動で指定するを参照してください。
Python 拡張機能は設定から構成できます。詳しくはPython 設定リファレンスをご覧ください。
Windows Subsystem for Linux: Windows をお使いの場合、WSL は Python 開発を行うのに最適な方法です。Windows 上で Linux ディストリビューションを実行でき、Python はすでにインストールされていることがよくあります。WSL 拡張機能と組み合わせることで、WSL のコンテキストで実行しながら、VS Code の完全な編集およびデバッグサポートが得られます。詳細については、WSL での開発に移動するか、WSL での作業チュートリアルをお試しください。
Python コードの実行
Python を体験するには、ファイルエクスプローラーを使用して hello.py という名前のファイルを作成し、次のコードを貼り付けます。
print("Hello World")
Python 拡張機能は、現在選択されているインタープリターを使用して Python コードを実行するためのショートカットを提供します (コマンドパレットの Python: インタープリターの選択)。アクティブな Python ファイルを実行するには、エディターの右上にある Python ファイルの実行 再生ボタンをクリックします。

また、Python: 選択行/行を Python ターミナルで実行 コマンド (Shift+Enter) で個別の行またはコードの選択を実行することもできます。選択がない場合、スマートセンドはカーソルが置かれている行の周りの最小実行可能なコードブロックを Python ターミナルに送信します (Shift+Enter)。同じ Python の実行 > 選択行/行を Python ターミナルで実行 コマンドは、エディターの選択範囲のコンテキストメニューから利用できます。ターミナルが閉じられるまで、選択範囲または行をターミナル/REPL で実行するたびに同じターミナルが使用されます。同じターミナルは ターミナルで Python ファイルを実行 にも使用されます。そのターミナルがまだ REPL を実行している場合は、Python ファイルを実行する前に REPL を終了する (exit()) か、別のターミナルに切り替える必要があります。
Python 拡張機能は、選択範囲の最初の空白でない行に基づいてインデントを自動的に削除し、必要に応じて他のすべての行を左にシフトします。
このコマンドは、必要に応じて Python ターミナルを開きます。また、Python: ターミナル REPL の開始 コマンドを使用して、対話型 REPL 環境を直接開くこともできます。このコマンドは、現在選択されているインタープリターでターミナルをアクティブにし、Python REPL を実行します。
より具体的なウォークスルーやコードを実行する他の方法については、コード実行チュートリアルを参照してください。
オートコンプリートと IntelliSense
Python 拡張機能は、現在選択されているインタープリターを使用してコード補完と IntelliSense をサポートします。IntelliSense は、すべてのファイル、組み込みモジュール、サードパーティモジュールにわたるインテリジェントなコード補完 (コンテキスト内でのメソッドと変数の提案) など、多くの機能の総称です。
IntelliSense は、入力中にメソッド、クラスメンバー、ドキュメントを素早く表示します。また、⌃Space (Windows、Linux Ctrl+Space) でいつでも補完をトリガーできます。識別子にカーソルを合わせると、詳細情報が表示されます。

AI で補完を強化する
GitHub Copilot は、より速く、よりスマートにコードを記述するのに役立つ AI 搭載のコード補完ツールです。GitHub Copilot 拡張機能を VS Code で使用してコードを生成したり、生成されたコードから学習したりできます。
GitHub Copilot は、Python 以外の言語や、JavaScript、TypeScript、Ruby、Go、C#、C++ など、さまざまなフレームワークの提案を提供します。
Copilot の使用開始方法については、Copilot ドキュメントで詳しく学ぶことができます。
Linting
リンティングは、Python コードの潜在的なエラーを分析し、さまざまな問題に簡単に移動して修正できるようにします。
Python 拡張機能は、Pylint、pycodestyle、Flake8、mypy、pydocstyle、prospector、pylama など、さまざまなリンターを適用できます。リンティングを参照してください。
デバッグ
print ステートメントによるデバッグはもう不要です。VS Code には、Python Debugger 拡張機能を介して Python の優れたデバッグサポートが付属しており、ブレークポイントの設定、変数の検査、デバッグコンソールを使用してプログラムがステップバイステップでどのように実行されているかを詳細に確認できます。マルチスレッド、Web、リモートアプリケーションなど、さまざまな種類の Python アプリケーションをデバッグできます。
launch.json 設定の構成やリモートデバッグの実装など、Python でのデバッグに関するより具体的な情報については、デバッグを参照してください。一般的な VS Code のデバッグ情報は、デバッグドキュメントに記載されています。
さらに、Django と Flask のチュートリアルでは、Django テンプレートのデバッグを含む、Web アプリケーションのコンテキストでデバッグを実装する方法の例が提供されています。
環境
Python 拡張機能は、標準的な場所にインストールされている Python インタープリターを自動的に検出します。また、ワークスペースフォルダ内の conda 環境や仮想環境も検出します。Python 環境の構成を参照してください。
現在の環境は、VS Code のステータスバーの右側に表示されます。

ステータスバーは、インタープリターが選択されていない場合も示します。

選択された環境は、IntelliSense、オートコンプリート、リンティング、フォーマット、およびその他の言語関連の機能に使用されます。また、ターミナルで Python を実行またはデバッグするとき、あるいは ターミナル: 新しいターミナルの作成 コマンドで新しいターミナルを作成するときにもアクティブ化されます。
現在のインタープリターを変更するには、conda または仮想環境に切り替える場合を含め、ステータスバーのインタープリター名を選択するか、Python: インタープリターの選択 コマンドを使用します。

VS Code は、検出された環境のリストと、ユーザー設定に手動で追加したすべての環境 (「Python 環境の構成」を参照) を表示します。
Jupyter Notebook
VS Code で Jupyter Notebook ファイル (.ipynb) の Python サポートを有効にするには、Jupyter 拡張機能をインストールできます。Python と Jupyter の拡張機能は連携して、VS Code で素晴らしい Notebook エクスペリエンスを提供し、IntelliSense サポート付きでコードセルを直接表示および変更したり、実行およびデバッグしたりする機能を提供します。

また、Jupyter: Python スクリプトにエクスポート コマンドを使用して、ノートブックを Python コードファイルとして変換して開くこともできます。ノートブックのセルは Python ファイル内で #%% コメントで区切られ、Jupyter 拡張機能は セルの実行 または 以下を実行 の CodeLens を表示します。いずれかの CodeLens を選択すると、Jupyter サーバーが起動し、Python 対話型ウィンドウでセルが実行されます。

リモート Jupyter サーバーに接続してノートブックを実行することもできます。詳細については、Jupyter サポートを参照してください。
テスト
Python 拡張機能は、Python の組み込み unittest フレームワークと pytest を使用したテストをサポートしています。
テストを実行するには、プロジェクトの設定でサポートされているテストフレームワークのいずれかを有効にする必要があります。各フレームワークには、テスト検出のパスとパターンを識別するための引数など、独自の特定の設定があります。
テストが検出されると、VS Code はテストを実行およびデバッグするためのさまざまなコマンド (ステータスバー、コマンドパレットなど) を提供します。これらのコマンドを使用すると、個々のテストファイルとメソッドも実行できます。
設定
Python 拡張機能は、そのさまざまな機能に対して幅広い設定を提供します。これらは、コードの編集、リンティング、デバッグ、テストなど、関連するトピックで説明されています。完全なリストは設定リファレンスにあります。
Python プロファイルテンプレート
プロファイルを使用すると、現在のプロジェクトやタスクに応じて拡張機能、設定、UI レイアウトを素早く切り替えることができます。Python 開発を開始するのに役立つように、便利な拡張機能、設定、スニペットを含む厳選されたプロファイルであるPython プロファイルテンプレートを使用できます。プロファイルテンプレートをそのまま使用することも、独自のワークフローに合わせてさらにカスタマイズするための出発点として使用することもできます。
プロファイルテンプレートは、プロファイル > プロファイルの作成... ドロップダウンから選択します。

プロファイルテンプレートを選択したら、設定と拡張機能を確認し、新しいプロファイルに含めたくない個々の項目を削除できます。テンプレートに基づいて新しいプロファイルを作成した後、設定、拡張機能、または UI に加えられた変更はプロファイルに保持されます。
その他の人気のある Python 拡張機能
Microsoft Python 拡張機能は、この記事で前述したすべての機能を提供します。他の人気のある Python 拡張機能をインストールすることで、VS Code に追加の Python 言語サポートを追加できます。
- 拡張機能ビューを開きます (⇧⌘X (Windows、Linux Ctrl+Shift+X))。
- 「python」と入力して拡張機能リストをフィルター処理します。
上記に示されている拡張機能は動的にクエリされます。上記の拡張機能タイルをクリックして説明とレビューを読み、あなたにとって最適な拡張機能を決定してください。詳細については、マーケットプレイスを参照してください。
次のステップ
- Python Hello World チュートリアル - VS Code で Python を始めましょう。
- Python の編集 - Python の自動補完、書式設定、リファクタリングについて学びます。
- 基本的な編集 - 強力な VS Code エディターについて学習します。
- コード ナビゲーション - ソースコード内をすばやく移動します。
- Django チュートリアル
- Flask チュートリアル
