対話型ウィンドウでの IPython の使用Using IPython in the Interactive Window

Visual Studio の IPython モードの対話型ウィンドウは、対話型の並列コンピューティング機能を備えた高度で使いやすい対話形式の開発環境です。The Visual Studio interactive window in IPython mode is an advanced yet user-friendly interactive development environment that has Interactive Parallel Computing features. このトピックでは、Visual Studio の対話型ウィンドウで IPython を使用する手順について説明します。IPython でも、通常の対話型ウィンドウ機能をすべて使用できます。This topic walks through using IPython in the Visual Studio interactive window, in which all of the regular interactive window features are also available.

このチュートリアルでは、IPython と必要なライブラリが含まれている Anaconda 環境をインストールする必要があります。For this walkthrough you should have the Anaconda environment installed, which includes IPython and the necessary libraries.

注意

Interactive オプション フォームで選択できるにもかかわらず、IronPython は IPython をサポートしていません。IronPython does not support IPython, despite the fact that you can select it on the Interactive Options form. 詳細については、機能要求のページを参照してください。FOr more information see the feature request.

  1. Visual Studio を開き、Python 環境ウィンドウに切り替え ([表示]、[その他のウィンドウ]、[Python 環境] の順に選択)、IPython を開始したときに表示された Python 環境を選択します。Open Visual Studio, switch to the Python Environments window (View > Other Windows > Python Environments), and select the Python environment that appeared when you started IPython.

  2. [パッケージ] (または [pip]) タブを見て、IPythonmatplotlib が表示されていることを確認します。Look at the Packages (or pip) tab and ensure that IPython and matplotlib are listed. 表示されていない場合は、それらをここでインストールします。If not, install them here.

  3. [概要] タブを選択し、[IPython 対話モードを使用する] を選択しますSelect the Overview tab and select Use IPython interactive mode. (Visual Studio 2015 で [Configure interactive options](対話オプションの構成) を選択して [オプション] ダイアログを開き、[インタラクティブ モード] を IPython に設定し、[OK] を選択します)。(In Visual Studio 2015, select Configure interactive options to open the Options dialog, then set Interactive Mode to IPython, and select OK).

  4. [対話型ウィンドウを開く] を選択して、対話型ウィンドウを IPython モードで表示します。Select Open interactive window to bring up the interactive window in IPython mode. 対話型モードを変更した場合、ウィンドウのリセットが必要な可能性があります。たとえば、>>> プロンプトのみが表示されている場合、Enter キーを押して更新することができます。You may need to reset the window if you have just changed the interactive mode; you might also need to press Enter if only a >>> prompt appears.

    Python モードの対話型ウィンドウ

  5. 次のコードを入力します。Enter the following code:

    x = linspace(0, 5, 10)
    y = x ** 2
    plot(x, y, 'r', x, x ** 3, 'g', x, x ** 4, 'b')
    
  6. 最後の行を入力した後、インライン グラフが表示されます (必要であれば、右下隅をドラッグしてサイズを変更できます)。After entering the last line, you should see an inline graph (which you can resize by dragging on the lower right-hand corner) if desired.

    対話型ウィンドウのインライン グラフ

  7. REPL で入力する代わりに、エディターでコードを記述し、コードを選択して右クリックし、[Interactive に送信] コマンド (または Ctrl + E キー) を選択できます。Instead of typing in the REPL, you can instead write code in the editor, select it, right-click, and select the Send to interactive command (or press Ctrl-Enter). 次のコードをエディターの新しいファイルに貼り付け、Ctrl + A で選択し、対話型ウィンドウに送信してみてくださいTry pasting the code below into a new file in the editor, selecting it with Ctrl-A, then sending to the interactive window. (中間のグラフや部分的なグラフが表示されないように、Visual Studio からはコードが 1 つの単位として送信されます)。(Note that Visual Studio sends the code as one unit to avoid giving you intermediate or partial graphs. また、別の環境で開いた Python オブジェクトを選択していない場合、[Python 環境] ウィンドウの既定としてどの環境が選択されている場合でも、Visual Studio では対話型ウィンドウが開きます。Also note that if you don't have a Python project open with a different environment selected, Visual Studio opens an interactive window for whatever environment is selected as your default in the Python Environments window.)

    from mpl_toolkits.mplot3d import Axes3D
    import matplotlib.pyplot as plt
    import numpy as np
    fig = plt.figure()
    ax = fig.add_subplot(111, projection='3d')
    for c, z in zip(['r', 'g', 'b', 'y'], [30, 20, 10, 0]):
        xs = np.arange(20)
        ys = np.random.rand(20)
        # You can provide either a single color or an array. To demonstrate this,
        # the first bar of each set will be colored cyan.
        cs = [c] * len(xs) 
        cs[0] = 'c' 
        ax.bar(xs, ys, zs=z, zdir='y', color=cs, alpha=0.8)
    
    ax.set_xlabel('X') 
    ax.set_ylabel('Y') 
    ax.set_zlabel('Z') 
    plt.show()
    

    エディターから対話型ウィンドウへのコードの送信

  8. 対話型ウィンドウ以外にグラフを表示するには、[デバッグ] の [デバッグなしで開始] コマンドを使用してコードを実行します。To see the graphs outside of the interactive window, run the code instead using the Debug > Start without Debugging command.

IPython には、システム シェルのエスケープ、変数の代入、出力のキャプチャなどの便利な機能が多数あります。詳細については、IPython のドキュメントを参照してください。IPython has many other useful features such as escaping to the system shell, variable substitution, capturing output, etc. Refer to the IPython documentation for more.