次の方法で共有


チュートリアル: Visual Studio で対話型 REPL ウィンドウを使用する

この記事では、チュートリアル シリーズの手順 3 Visual Studioでの Python の操作について説明します。

Visual Studio 対話型開発環境 (IDE) には、さまざまな開発タスクをサポートするさまざまなウィンドウが用意されています。 チュートリアルの手順 1手順 2では、ソリューション エクスプローラーでファイルを管理し、コード エディターでファイルコンテンツを操作する方法について説明します。 手順 3 では、Visual Studio Interactive Window for Python を使用して、通常の edit-build-debug サイクルを大幅に短縮する豊富な読み取り/評価/印刷ループ (REPL) エクスペリエンスを実現します。 Python 用の 対話型ウィンドウ で作業することで、Python コマンド ラインの REPL エクスペリエンスのすべての機能を利用できます。 また、Visual Studio エディターでソース ファイルとコードを簡単に交換できます。それ以外の場合は、コマンド ラインでは面倒です。

チュートリアルの手順 3 では、次の方法を学習します。

  • Python の対話型ウィンドウにアクセスし、Python インタープリターを設定する
  • ウィンドウでコードを入力して実行し、コマンド履歴をスクロールする
  • 他のソースから既存のコードまたはコードを挿入する
  • 対話型ウィンドウからコードとプログラムの出力をコピーする

前提 条件

  • Python ファイル (.py) を含む Python アプリケーション プロジェクト。手順 2: Python コードを記述して実行します。

  • REPL エクスペリエンスを最適にサポートするには、ipython パッケージと ipykernel パッケージをインストールします。 詳細については、「python 環境パッケージの 」タブを参照してください。

Python 用の対話型ウィンドウを開く

次の手順に従って、対話型ウィンドウの を開き、コードの操作を開始します。

  1. Python 用の 対話型ウィンドウ を開くには、次のいずれかの方法を使用します。

    • ソリューション エクスプローラー で、プロジェクト ノードを右クリックし、[対話型ウィンドウを開く] 選択します。
    • ソリューション エクスプローラーで、プロジェクトの Python 環境 ノードで、プロジェクトの Python 環境を右クリックし、[対話型ウィンドウを開く] 選択します。 (Python 環境の例として、Python 3.11 (64 ビット) があります)。
    • ツールバーで、[表示]、[>他のウィンドウ]、[>Python 対話型ウィンドウ] を選択するか、キーボード ショートカット [Alt+I] を使用します。

    Visual Studio では、エディター ウィンドウの下に Python 用の 対話型ウィンドウ が開きます。 ウィンドウには標準の >>> Python REPL プロンプトがあります。

    Visual Studio のコード エディターの下に開いている Python 用の対話型ウィンドウを示すスクリーンショット。

  2. 対話型ウィンドウで、環境 ドロップダウン リストを使用して、操作する特定の Python インタープリターを選択できます。

    Visual Studio の対話型ウィンドウの [環境] ドロップダウン リストから Python インタープリターを選択する方法を示すスクリーンショット。

  3. ウィンドウとコード エディターの間で区切り記号を移動することで、対話型ウィンドウの を大きくできます。

    Visual Studio の対話型ウィンドウのサイズを大きくするために区切り記号を移動する方法を示すスクリーンショット。

    ヒント

    Visual Studio でウィンドウのサイズを変更するには、ウィンドウと周囲のウィンドウの間で区切り記号を移動します。 Visual Studio フレームからウィンドウを移動したり、フレーム内のウィンドウを再配置したりすることもできます。

  4. 対話型ウィンドウに、print("Hello, Visual Studio") などのステートメントと、123/456などの計算式を入力します。 Visual Studio では、コードの結果がすぐに表示されます。

    Visual Studio で入力したコードの即時の結果が対話型ウィンドウに表示される方法を示すスクリーンショット。

  5. 次に、次の例に示す関数定義のような複数行ステートメントを入力します。

    コードを入力すると、対話型ウィンドウ に Python 継続プロンプト (...) が表示されます。 コマンド ライン REPL エクスペリエンスとは異なり、対話型ウィンドウ では、コードを入力するときに自動インデントが提供されます。

    対話型ウィンドウを示すスクリーンショットでは、Visual Studio の複数行コード ステートメントに対する Python 継続プロンプトが表示されます。

    コードに新しい行を追加するには、Shift+Enterを選択します。

  6. 上向き/下向き矢印キーを使用して、これまでに入力したコマンドの一覧をスクロールします。

    対話型ウィンドウ は、入力したすべてのすべての履歴を提供し、複数行の履歴項目を含むコマンドライン REPL エクスペリエンスを向上させます。 関数の定義全体を 1 つの単位としてすぐに呼び出し、関数名を変更したり、他のステートメントを調整したりできます。 この方法は、関数を 1 行ずつ再作成するよりも簡単です。

既存のコードを再利用および変更する

Visual Studio には、前に説明したように、対話型ウィンドウで既存の Python コードを使用するさまざまな方法 (コピーと貼り付け、以前に入力したコードへのアクセスなど) が用意されています。 もう 1 つの方法は、エディター ウィンドウから Interactive Windowに複数行のコードを送信することです。 この機能を使用すると、ソース ファイル内のコードを維持し、選択したフラグメントを 対話型ウィンドウに簡単に送信できます。 その後、プログラム全体を実行する必要なく、迅速な REPL 環境でコード フラグメントを操作できます。

次の手順を実行して、これらの機能を試してください。

  1. エディターで Python プロジェクト ファイル (.py) を開きます。 (チュートリアルの手順 2 では、既定のファイル名が PythonApplication1.pyこのファイルを作成する方法について説明します。

  2. ファイル内の for ループ ステートメントを次のコードに置き換えます。

    # Create a string with spaces proportional to a cosine of x in degrees
    def make_dot_string(x):
        return ' ' * int(20 * cos(radians(x)) + 20) + 'o'
    
  3. ファイル内の import ステートメントを右クリックし、[対話型 に送信] 選択します (または、キーボード ショートカット Ctrl+E)。 from ステートメントに対してこのプロセスを繰り返します。

    Visual Studio の対話型ウィンドウに import ステートメントと from ステートメントのコードを送信する方法を示すスクリーンショット。

    [対話型に送信] コマンドを選択すると、選択したコード フラグメントが Interactive Window にすぐに貼り付けて実行されます。 この場合、Visual Studio は、math ライブラリ、および sys ライブラリから cos ルーチンと radians ルーチンをインポートします。

  4. make_dot_string 関数のプロセスをもう一度繰り返します。 必ず、関数の両方の行を送信してください。 関数の完全なコードを送信したら、対話型ウィンドウに新しい行を入力します。

    このコードでは関数が定義されているため、次の例に示すように、関数を数回呼び出すことで、関数をすばやくテストできます。

    Visual Studio の対話型ウィンドウに送信された関数コードのテストを実行する方法を示すスクリーンショット。

    ヒント

    キーボード ショートカット Ctrl+Enter を使用して、対話型ウィンドウで現在のコード行を実行できます。 コードの実行後、キャレット プロンプトは次の行に移動します。 を選択し、Ctrl+Enterを繰り返し押すことで、コードを便利にステップ実行することができます。これは、Pythonコマンドラインの環境では実行できません。 また、この方法を使用して、デバッガーを実行せず、必ずしも最初からプログラムを開始せずにコードをステップ実行することもできます。

  5. プロセスをもう一度試しますが、今度は、任意のソースから 対話型ウィンドウ に複数行のコードをコピーして貼り付けます。 次のコード スニペットを使用できます。

    for i in range(360):
        s = make_dot_string(i)
        print(s)
    

    複数行の貼り付けアクションは、Python コマンド ライン REPL エクスペリエンスでは困難です。 コードを貼り付けた後、対話型ウィンドウ は、ウィンドウに直接入力したかのようにコードを実行します。

    Visual Studio の対話型ウィンドウに複数行のコードを貼り付ける方法を示すスクリーンショット。

    現在のコードは機能しますが、出力は刺激的ではありません。 for ループ内の別のステップ値は、余弦波の多くを示すことができます。 for ループのコードは、REPL 履歴で 1 つの単位として使用できます。 コードを見つけて必要な変更を加え、関数を再度テストできます。

  6. 上方向キー 使用してコマンド履歴をスクロールし、for ループ コードで停止します。

  7. 左/右 方向キーを使用して、for ループ ステートメントのコードに移動します。 線の先頭に達したら、 方向キーを選択して、前の行の末尾に移動します。

  8. for ループ ステートメントで、range 定義に移動し、ステートメントを range(0, 360, 12)に変更します。

  9. for ループ ステートメント内の任意の場所 Ctrl キーを押+Enter を選択して、関数を再度実行します。

    Visual Studio の対話型ウィンドウで前のステートメントを編集する方法を示すスクリーンショット。

  10. 必要な値が見つかるまで、プロセスを繰り返してさまざまなステップ設定を試します。 また、範囲を長くしてウェーブを繰り返すこともできます(例: range(0, 1800, 12))。

コードとプログラムの出力をコピーする

Visual Studio では、対話型ウィンドウで記述したコードと、コードの実行からの出力をコピーできます。

対話型ウィンドウ からエディターにコードをコピーするには、次の手順に従います。

  1. 対話型ウィンドウで、コピーするコードを選択します。

  2. 右クリックして選択したコードをコピーする場合は、[コードのコピー] を選択するか、キーボード ショートカット Ctrl+Shift+Cを使用します。

    Visual Studio でのプロンプトと出力を含む選択項目の対話型ウィンドウ コピー コード コマンドを示すスクリーンショット。

  3. コピーしたコードをエディターに貼り付けます。 Visual Studio のこの特別な機能では、選択内容における出力が、>>> プロンプトと ... プロンプトと共に自動的に省略されます。

    エディターに貼り付けると、コードのみが取得されます。

    for i in range(0, 1800, 12):
        s = make_dot_string(i)
        print(s)
    
  4. プロンプトやプログラム出力を含む 対話型ウィンドウ の正確な内容をコピーするには、標準の Copy コマンドを使用します。

これらの手順では、対話型ウィンドウ の迅速な REPL 環境を使用して、小さな Python コードの詳細を調べ、コードをプロジェクトのソース ファイルに簡単に追加しました。 コードを再実行する際は、Ctrl+の後に F5 を押すか、デバッグなしで デバッグ>開始を選択すると、まさに望んでいた正確な結果を見ることができます。

次の手順

手順 4: デバッガー でコードを実行する