チュートリアル: 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 用の対話型ウィンドウを開く
次の手順に従って、対話型ウィンドウの を開き、コードの操作を開始します。
Python 用の 対話型ウィンドウ を開くには、次のいずれかの方法を使用します。
- ソリューション エクスプローラー で、プロジェクト ノードを右クリックし、[対話型ウィンドウを開く] 選択します。
- ソリューション エクスプローラーで、プロジェクトの Python 環境 ノードで、プロジェクトの Python 環境を右クリックし、[対話型ウィンドウを開く] 選択します。 (Python 環境の例として、Python 3.11 (64 ビット) があります)。
- ツールバーで、[表示]、[>他のウィンドウ]、[>Python 対話型ウィンドウ] を選択するか、キーボード ショートカット [Alt+I] を使用します。
Visual Studio では、エディター ウィンドウの下に Python 用の 対話型ウィンドウ が開きます。 ウィンドウには標準の >>> Python REPL プロンプトがあります。
対話型ウィンドウで、環境 ドロップダウン リストを使用して、操作する特定の Python インタープリターを選択できます。
ウィンドウとコード エディターの間で区切り記号を移動することで、対話型ウィンドウの を大きくできます。
ヒント
Visual Studio でウィンドウのサイズを変更するには、ウィンドウと周囲のウィンドウの間で区切り記号を移動します。 Visual Studio フレームからウィンドウを移動したり、フレーム内のウィンドウを再配置したりすることもできます。
対話型ウィンドウに、
print("Hello, Visual Studio")
などのステートメントと、123/456
などの計算式を入力します。 Visual Studio では、コードの結果がすぐに表示されます。次に、次の例に示す関数定義のような複数行ステートメントを入力します。
コードを入力すると、対話型ウィンドウ に Python 継続プロンプト (...) が表示されます。 コマンド ライン REPL エクスペリエンスとは異なり、対話型ウィンドウ では、コードを入力するときに自動インデントが提供されます。
コードに新しい行を追加するには、Shift+Enterを選択します。
上向き/下向き矢印キーを使用して、これまでに入力したコマンドの一覧をスクロールします。
対話型ウィンドウ は、入力したすべてのすべての履歴を提供し、複数行の履歴項目を含むコマンドライン REPL エクスペリエンスを向上させます。 関数の定義全体を 1 つの単位としてすぐに呼び出し、関数名を変更したり、他のステートメントを調整したりできます。 この方法は、関数を 1 行ずつ再作成するよりも簡単です。
既存のコードを再利用および変更する
Visual Studio には、前に説明したように、対話型ウィンドウで既存の Python コードを使用するさまざまな方法 (コピーと貼り付け、以前に入力したコードへのアクセスなど) が用意されています。 もう 1 つの方法は、エディター ウィンドウから Interactive Windowに複数行のコードを送信することです。 この機能を使用すると、ソース ファイル内のコードを維持し、選択したフラグメントを 対話型ウィンドウに簡単に送信できます。 その後、プログラム全体を実行する必要なく、迅速な REPL 環境でコード フラグメントを操作できます。
次の手順を実行して、これらの機能を試してください。
エディターで Python プロジェクト ファイル (.py) を開きます。 (チュートリアルの手順 2 では、既定のファイル名が PythonApplication1.pyこのファイルを作成する方法について説明します。
ファイル内の
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'
ファイル内の
import
ステートメントを右クリックし、[対話型 に送信] 選択します (または、キーボード ショートカット Ctrl+E)。from
ステートメントに対してこのプロセスを繰り返します。[対話型に送信] コマンドを選択すると、選択したコード フラグメントが Interactive Window にすぐに貼り付けて実行されます。 この場合、Visual Studio は、
math
ライブラリ、およびsys
ライブラリからcos
ルーチンとradians
ルーチンをインポートします。make_dot_string
関数のプロセスをもう一度繰り返します。 必ず、関数の両方の行を送信してください。 関数の完全なコードを送信したら、対話型ウィンドウに新しい行を入力します。このコードでは関数が定義されているため、次の例に示すように、関数を数回呼び出すことで、関数をすばやくテストできます。
ヒント
キーボード ショートカット Ctrl+Enter を使用して、対話型ウィンドウで現在のコード行を実行できます。 コードの実行後、キャレット プロンプトは次の行に移動します。 を選択し、Ctrl+Enterを繰り返し押すことで、コードを便利にステップ実行することができます。これは、Pythonコマンドラインの環境では実行できません。 また、この方法を使用して、デバッガーを実行せず、必ずしも最初からプログラムを開始せずにコードをステップ実行することもできます。
プロセスをもう一度試しますが、今度は、任意のソースから 対話型ウィンドウ に複数行のコードをコピーして貼り付けます。 次のコード スニペットを使用できます。
for i in range(360): s = make_dot_string(i) print(s)
複数行の貼り付けアクションは、Python コマンド ライン REPL エクスペリエンスでは困難です。 コードを貼り付けた後、対話型ウィンドウ は、ウィンドウに直接入力したかのようにコードを実行します。
現在のコードは機能しますが、出力は刺激的ではありません。
for
ループ内の別のステップ値は、余弦波の多くを示すことができます。for
ループのコードは、REPL 履歴で 1 つの単位として使用できます。 コードを見つけて必要な変更を加え、関数を再度テストできます。上方向キー 使用してコマンド履歴をスクロールし、
for
ループ コードで停止します。左/右 方向キーを使用して、
for
ループ ステートメントのコードに移動します。 線の先頭に達したら、左 方向キーを選択して、前の行の末尾に移動します。for
ループ ステートメントで、range
定義に移動し、ステートメントをrange(0, 360, 12)
に変更します。for
ループ ステートメント内の任意の場所 Ctrl キーを押+Enter を選択して、関数を再度実行します。必要な値が見つかるまで、プロセスを繰り返してさまざまなステップ設定を試します。 また、範囲を長くしてウェーブを繰り返すこともできます(例:
range(0, 1800, 12)
)。
コードとプログラムの出力をコピーする
Visual Studio では、対話型ウィンドウで記述したコードと、コードの実行からの出力をコピーできます。
対話型ウィンドウ からエディターにコードをコピーするには、次の手順に従います。
対話型ウィンドウで、コピーするコードを選択します。
右クリックして選択したコードをコピーする場合は、[コードのコピー] を選択するか、キーボード ショートカット Ctrl+Shift+Cを使用します。
コピーしたコードをエディターに貼り付けます。 Visual Studio のこの特別な機能では、選択内容における出力が、
>>>
プロンプトと...
プロンプトと共に自動的に省略されます。エディターに貼り付けると、コードのみが取得されます。
for i in range(0, 1800, 12): s = make_dot_string(i) print(s)
プロンプトやプログラム出力を含む 対話型ウィンドウ の正確な内容をコピーするには、標準の Copy コマンドを使用します。
これらの手順では、対話型ウィンドウ の迅速な REPL 環境を使用して、小さな Python コードの詳細を調べ、コードをプロジェクトのソース ファイルに簡単に追加しました。 コードを再実行する際は、Ctrl+の後に F5 を押すか、デバッグなしで デバッグ>開始を選択すると、まさに望んでいた正確な結果を見ることができます。
次の手順
手順 4: デバッガー でコードを実行する