VS Codeのエージェントモードを拡張するには、を試してください!

VS CodeでのPython入門

このチュートリアルでは、Visual Studio CodeでPython 3を使用して、Pythonの「サイコロを振る!」アプリケーションの作成、実行、デバッグ、仮想環境の操作、パッケージの使用などについて学びます。Python拡張機能を使用することで、VS Codeは優れた軽量のPythonエディターになります。

プログラミングが初めての方は、Visual Studio Code for Education - Introduction to Pythonコースをご覧ください。このコースは、すぐにコーディングできるブラウザーベースの開発環境で、構造化されたモジュールを備えたPythonの包括的な入門を提供します。

Python言語をより深く理解するために、VS Codeのコンテキスト内でpython.orgに記載されているプログラミングチュートリアルのいずれかを試すことができます。

Pythonを使用したデータサイエンスに焦点を当てたチュートリアルについては、データサイエンスのセクションをご覧ください。

前提条件

このチュートリアルを正常に完了するには、まずPython開発環境をセットアップする必要があります。具体的には、このチュートリアルでは以下が必要です。

Pythonインタープリターをインストールする

Python拡張機能とともに、Pythonインタープリターをインストールする必要があります。どのインタープリターを使用するかは特定のニーズによって異なりますが、以下にいくつかのガイダンスを示します。

Windows

python.orgからPythonをインストールします。ページに最初に表示されるDownload Pythonボタンを使用して、最新バージョンをダウンロードしてください。

: 管理者権限がない場合、WindowsにPythonをインストールする別のオプションとしてMicrosoft Storeを使用する方法があります。Microsoft Storeでは、サポートされているPythonバージョンをインストールできます。

WindowsでのPythonの使用に関する追加情報については、Python.orgのUsing Python on Windowsを参照してください。

macOS

macOSのシステムインストール版Pythonはサポートされていません。代わりに、Homebrewのようなパッケージ管理システムが推奨されます。macOSでHomebrewを使用してPythonをインストールするには、ターミナルのプロンプトでbrew install python3を使用します。

: macOSでは、VS Codeのインストール場所がPATH環境変数に含まれていることを確認してください。詳細については、これらのセットアップ手順を参照してください。

Linux

Linuxに組み込まれているPython 3のインストールはうまく機能しますが、他のPythonパッケージをインストールするには、get-pip.pypipをインストールする必要があります。

その他のオプション

  • データサイエンス: Pythonを使用する主な目的がデータサイエンスである場合は、Anacondaからのダウンロードを検討するとよいでしょう。AnacondaはPythonインタープリターだけでなく、データサイエンスに役立つ多くのライブラリやツールも提供します。

  • Windows Subsystem for Linux: Windowsで作業していて、Pythonを扱うためのLinux環境が必要な場合は、Windows Subsystem for Linux (WSL) が選択肢となります。このオプションを選択した場合は、WSL拡張機能もインストールする必要があります。VS CodeでWSLを使用する方法の詳細については、VS Code Remote Developmentを参照するか、Working in WSL tutorialを試してください。このチュートリアルでは、WSLのセットアップ、Pythonのインストール、およびWSLで実行されるHello Worldアプリケーションの作成手順を説明します。

: お使いのマシンにPythonが正常にインストールされたことを確認するには、(オペレーティングシステムに応じて) 次のコマンドのいずれかを実行します。

Linux/macOS: ターミナルウィンドウを開き、次のコマンドを入力します。

python3 --version

Windows: コマンドプロンプトを開き、次のコマンドを実行します。

py -3 --version

インストールが成功した場合、出力ウィンドウにインストールしたPythonのバージョンが表示されます。または、VS Codeの統合ターミナルでpy -0コマンドを使用して、マシンにインストールされているPythonのバージョンを表示することもできます。デフォルトのインタープリターはアスタリスク(*)で示されます。

ワークスペースフォルダーでVS Codeを開始する

フォルダー内でVS Codeを起動すると、そのフォルダーが「ワークスペース」になります。

コマンドプロンプトまたはターミナルを使用して、「hello」という名前の空のフォルダーを作成し、そこに移動して、VS Code (code) をそのフォルダー (.) で開くには、次のコマンドを入力します。

mkdir hello
cd hello
code .

: Anacondaディストリビューションを使用している場合は、必ずAnacondaのコマンドプロンプトを使用してください。

または、オペレーティングシステムのUIを介してフォルダーを作成し、VS Codeのファイル > フォルダーを開くを使用してプロジェクトフォルダーを開くこともできます。

仮想環境を作成する

Python開発者の間でのベストプラクティスは、プロジェクト固有のvirtual environmentを使用することです。その環境をアクティブにすると、その後インストールするパッケージは、グローバルなインタープリター環境を含む他の環境から分離され、パッケージのバージョン競合から生じる多くの複雑さを軽減します。VS Codeでは、Python: Create Environmentを使用してVenvまたはAnacondaで非グローバル環境を作成できます。

コマンドパレット (⇧⌘P (Windows, Linux Ctrl+Shift+P)) を開き、Python: Create Environmentコマンドを入力して検索し、コマンドを選択します。

コマンドは、環境タイプの一覧(VenvまたはConda)を表示します。この例では、Venvを選択します。

Create Environment dropdown

次に、プロジェクトに使用できるインタープリターのリストが表示されます。チュートリアルの最初にインストールしたインタープリターを選択します。

Virtual environment interpreter selection

インタープリターを選択すると、環境作成の進行状況を示す通知が表示され、ワークスペースに環境フォルダー (/.venv) が表示されます。

Create environment status notification

コマンドパレットからPython: Select Interpreterコマンドを使用して、新しい環境が選択されていることを確認します。

Select an Interpreter

: 仮想環境に関する追加情報、または環境作成プロセスでエラーが発生した場合は、環境を参照してください。

Pythonソースコードファイルを作成する

ファイルエクスプローラーのツールバーから、helloフォルダーの新しいファイルボタンを選択します。

File Explorer New File

ファイルにhello.pyという名前を付けると、VS Codeは自動的にエディターでそれを開きます。

File Explorer hello.py

.pyファイル拡張子を使用することで、VS CodeにこのファイルをPythonプログラムとして解釈するように指示します。これにより、Python拡張機能と選択されたインタープリターでコンテンツが評価されます。

: ファイルエクスプローラーのツールバーでは、ワークスペース内にフォルダーを作成してコードをより良く整理することもできます。新しいフォルダーボタンを使用して、フォルダーをすばやく作成できます。

ワークスペースにコードファイルができたので、hello.pyに次のソースコードを入力します。

msg = "Roll a dice!"
print(msg)

printと入力し始めると、IntelliSenseが自動補完のオプションを提示することに気付くでしょう。

IntelliSense appearing for Python code

IntelliSenseと自動補完は、標準のPythonモジュールだけでなく、選択されたPythonインタープリターの環境にインストールした他のパッケージでも機能します。また、オブジェクトタイプで利用可能なメソッドの補完も提供します。たとえば、msg変数は文字列を含んでいるため、msg.と入力するとIntelliSenseは文字列メソッドを提供します。

IntelliSense appearing for a variable whose type provides methods

最後に、ファイルを保存します (⌘S (Windows, Linux Ctrl+S))。これで、VS Codeで最初のPythonファイルを実行する準備が整いました。

編集、フォーマット、リファクタリングの詳細については、コードの編集を参照してください。Python拡張機能はリンティングも完全にサポートしています。

Python コードの実行

エディターの右上にあるPythonファイルを実行の再生ボタンをクリックします。

Using the Run Python File button

ボタンはターミナルパネルを開き、そこでPythonインタープリターが自動的にアクティブ化され、python3 hello.py (macOS/Linux) または python hello.py (Windows) が実行されます。

Program output in a Python terminal

VS Code内でPythonコードを実行するには、他に3つの方法があります。

  1. エディターウィンドウのどこかを右クリックし、Python > ターミナルでPythonファイルを実行を選択します (これによりファイルが自動的に保存されます)。

    Run Python File in Terminal command in the Python editor

  2. 1行以上を選択し、Shift+Enterを押すか、右クリックしてPython > 選択範囲/行をPythonターミナルで実行を選択します。または、選択範囲なしでShift+Enterを使用してスマート送信を有効にすると、Python拡張機能はカーソルが置かれている場所の近くにある最小の実行可能なコードブロックをターミナルに送信します。このコマンドは、ファイルの一部だけをテストするのに便利です。

    : カーソルが置かれている特定の行でコードを送信したい場合は、ユーザー設定でpython.REPL.enableREPLSmartSend : "false"を設定することでスマート送信をオフにできます。

  3. コマンドパレット (⇧⌘P (Windows, Linux Ctrl+Shift+P))から、Python: Start Terminal REPLコマンドを選択して、現在選択されているPythonインタープリター用のREPLターミナル(>>>で示される)を開きます。REPLでは、コードを1行ずつ入力して実行できます。

おめでとうございます、Visual Studio Codeで最初のPythonコードを実行しました!

デバッガーを構成して実行する

それでは、Pythonプログラムのデバッグを試してみましょう。デバッグサポートはPython Debugger拡張機能によって提供され、これはPython拡張機能と一緒に自動的にインストールされます。正しくインストールされていることを確認するには、拡張機能ビュー (⇧⌘X (Windows, Linux Ctrl+Shift+X)) を開き、@installed python debuggerを検索します。結果にPython Debugger拡張機能が表示されるはずです。

Python Debugger extension shown in installed extensions view in VS Code.

次に、カーソルをprint呼び出しに置いてF9を押すことで、hello.pyの2行目にブレークポイントを設定します。または、エディターの左側のガター(行番号の隣)をクリックします。ブレークポイントを設定すると、ガターに赤い円が表示されます。

Setting a breakpoint in hello.py

次に、デバッガーを初期化するためにF5を押します。このファイルを初めてデバッグするため、コマンドパレットから構成メニューが開き、開いているファイルに使用したいデバッグ構成のタイプを選択できます。

List of Python debugger configuration options

: VS Codeは、さまざまな構成すべてにJSONファイルを使用します。launch.jsonは、デバッグ構成を含むファイルの標準名です。

Python Fileを選択します。これは、現在選択されているPythonインタープリターを使用してエディターに表示されている現在のファイルを実行する構成です。

デバッガーが開始され、ファイルの最初の行のブレークポイントで停止します。現在の行は左マージンの黄色い矢印で示されます。この時点でローカル変数ウィンドウを調べると、msg変数がローカルペインに表示されていることがわかります。

Debugging step 2 - variable defined

上部にデバッグツールバーが表示され、左から右へ次のコマンドがあります:続行 (F5)、ステップオーバー (F10)、ステップイン (F11)、ステップアウト (⇧F11 (Windows, Linux Shift+F11))、再起動 (⇧⌘F5 (Windows, Linux Ctrl+Shift+F5))、停止 (⇧F5 (Windows, Linux Shift+F5))。

Debugging toolbar

ステータスバーの色も(多くのテーマでオレンジ色に)変わり、デバッグモードであることを示します。Pythonデバッグコンソールも右下のパネルに自動的に表示され、実行中のコマンドとプログラムの出力が表示されます。

プログラムの実行を続けるには、デバッグツールバーの続行コマンド (F5) を選択します。デバッガーはプログラムを最後まで実行します。

ヒント デバッグ情報は、変数などのコードにカーソルを合わせることでも確認できます。msgの場合、変数にカーソルを合わせると、変数の上にRoll a dice!という文字列がボックスで表示されます。

デバッグコンソールで変数を操作することもできます(表示されない場合は、VS Codeの右下領域でデバッグコンソールを選択するか、...メニューから選択します)。次に、コンソールの下部にある>プロンプトで、次の行を1つずつ入力してみてください。

msg
msg.capitalize()
msg.split()

Debugging step 3 - using the debug console

ツールバーの青い続行ボタンを再度選択する(またはF5を押す)と、プログラムが完了するまで実行されます。Pythonデバッグコンソールに戻ると、「Roll a dice!」が表示され、プログラムが完了するとVS Codeはデバッグモードを終了します。

デバッガーを再起動すると、デバッガーは再び最初のブレークポイントで停止します。

プログラムが完了する前に実行を停止するには、デバッグツールバーの赤い四角の停止ボタン (⇧F5 (Windows, Linux Shift+F5)) を使用するか、実行 > デバッグの停止メニューコマンドを使用します。

詳細については、デバッグ構成を参照してください。これには、デバッグに特定のPythonインタープリターを使用する方法に関する注記が含まれています。

ヒント: print文の代わりにログポイントを使用する: 開発者は、デバッガーでコードを1行ずつステップ実行することなく変数を素早く検査するために、ソースコードにprint文を散りばめることがよくあります。VS Codeでは、代わりにログポイントを使用できます。ログポイントはブレークポイントに似ていますが、コンソールにメッセージを記録し、プログラムを停止させない点が異なります。詳細については、メインのVS Codeデバッグ記事のログポイントを参照してください。

パッケージをインストールして使用する

前の例を基に、パッケージを使用してみましょう。

Pythonでは、パッケージはプログラムに追加機能を提供する便利なコードライブラリを入手する方法であり、通常はPyPIから入手します。この例では、numpyパッケージを使用して乱数を生成します。

エクスプローラービュー(左側の最上部にあるファイルを表示するアイコン)に戻り、hello.pyを開いて、次のソースコードを貼り付けます。

import numpy as np

msg = "Roll a dice!"
print(msg)

print(np.random.randint(1,9))

ヒント: 上記のコードを手で入力する場合、行末でEnterを押すと、asキーワードの後の名前が自動補完によって変更されることがあります。これを避けるには、スペースを入力してからEnterを押してください。

次に、前のセクションで説明した「Python: Current file」構成を使用して、デバッガーでファイルを実行します。

"ModuleNotFoundError: No module named 'numpy'"というメッセージが表示されるはずです。このメッセージは、必要なパッケージがインタープリターで利用できないことを示しています。Anacondaディストリビューションを使用しているか、以前にnumpyパッケージをインストールしている場合は、このメッセージが表示されないことがあります。

numpyパッケージをインストールするには、デバッガーを停止し、コマンドパレットを使用してターミナル: 新しいターミナルを作成する (⌃⇧` (Windows, Linux Ctrl+Shift+`)) を実行します。このコマンドは、選択したインタープリター用のコマンドプロンプトを開きます。

仮想環境に必要なパッケージをインストールするには、お使いのオペレーティングシステムに適した次のコマンドを入力します。

  1. パッケージをインストールする

    # Don't use with Anaconda distributions because they include matplotlib already.
    
    # macOS
    python3 -m pip install numpy
    
    # Windows (may require elevation)
    py -m pip install numpy
    
    # Linux (Debian)
    apt-get install python3-tk
    python3 -m pip install numpy
    
  2. さあ、デバッガーの有無にかかわらずプログラムを再実行して、出力を確認しましょう!

環境間での依存関係の管理

Pythonプロジェクトで作業する際には、依存関係を効果的に管理することが不可欠です。便利なヒントの1つは、pip freeze > requirements.txtコマンドを使用することです。このコマンドは、仮想環境にインストールされているすべてのパッケージをリストしたrequirements.txtファイルを作成するのに役立ちます。このファイルは、後で他の場所で同じ環境を再現するために使用できます。

requirements.txtファイルを作成するには、次の手順に従います。

  1. まだアクティブにしていない場合は、仮想環境をアクティブにします。

    source venv/bin/activate  # On macOS/Linux
    
    .\venv\Scripts\activate   # On Windows
    
  2. requirements.txtファイルを生成します。

    pip freeze > requirements.txt
    

これで、新しく生成されたrequirements.txtファイルを使用して、別の環境に依存関係をインストールできます。さらに、プロジェクトが複雑になるにつれて、このファイルに依存関係を追加し続けることができます。

pip install -r requirements.txt

これらの手順に従うことで、プロジェクトの依存関係が異なる環境間で一貫していることを保証し、他の人との共同作業やプロジェクトのデプロイが容易になります。

Pythonチュートリアルの完了、おめでとうございます!このチュートリアルでは、Pythonプロジェクトの作成、仮想環境の作成、Pythonコードの実行とデバッグ、Pythonパッケージのインストール方法を学びました。Visual Studio CodeでPythonを最大限に活用する方法を学ぶために、追加のリソースを調べてみてください!

次のステップ

人気のPython WebフレームワークでWebアプリを構築する方法を学ぶには、次のチュートリアルを参照してください。

Visual Studio CodeでのPythonには、さらに探求すべきことがたくさんあります。