在 Visual Studio 的交互窗口中使用 IPython

IPython 模式下的 Visual Studio 交互窗口是目前非常先进的用户友好交互式开发环境,具有交互式并行计算功能。 本文介绍如何在 Visual Studio 交互窗口中使用 IPython 以及如何访问标准交互窗口功能。

先决条件

注意

IronPython 不支持 IPython,但事实上,可以在“交互选项”窗体上选择此选项。 有关详细信息,请参阅功能请求(interp 为 IronPython 时支持 IPython)

使用交互窗口

以下步骤演示如何在交互窗口中使用 IPython 命令。 本演练假定你使用的是 Anaconda。

  1. 打开 Visual Studio,选择“视图”>“其他窗口”>“Python 环境”以打开“Python 环境”窗口。

  2. 在“Python 环境”窗口中,选择 Anaconda 环境。

  3. 切换到该环境的“包”视图,查看已安装的包。 在下拉菜单中,选择“包 (Conda)”。 菜单选项可能命名为 pip 或“包”

  4. 确认已为该环境安装了 ipythonmatplotlib 库。

    如果未安装这两个库,请按照教程:在 Visual Studio的 Python 环境中安装包中的说明操作。 有关详细信息,请参阅 Python 环境窗口 -“包”选项卡引用

  5. 切换到该环境的“概述”视图,选择“使用 IPython 交互模式”选项。

  6. 选择“打开交互窗口”,在 IPython 模式下显示交互窗口。 如果该窗口已打开,则可能需要重置窗口。

  7. 交互窗口打开时,应会看到第一个提示符 In [1]。 如果看到标准提示符 >>>,请在提示符处输入 return,以确保窗口使用 IPython 模式。 提示符应更改为类似 In [2] 的形式。

    显示在 Visual Studio 的 IPython 模式下的交互窗口的屏幕截图。

  8. 输入以下代码:

    import matplotlib.pyplot as plt
    import numpy as np
    
    x = np.linspace(0, 5, 10)
    y = x ** 2
    plt.plot(x, y, 'r', x, x ** 3, 'g', x, x ** 4, 'b')
    
  9. 输入最后一行代码并选择 Enter 后,应会显示内联图:

    显示在 Visual Studio 的 IPython 模式下交互窗口中的内联图的屏幕截图。

    可以通过拖动右下角来调整图形大小。

  10. 可以在 Visual Studio 编辑器中编写代码并将其发送到交互窗口,而不是直接在交互窗口中输入代码:

    1. 将以下代码粘贴到编辑器中的新文件。

    2. 使用键盘快捷键 Ctrl+A 选择编辑器中的代码。

    3. 右键单击所选代码,然后选择“发送到交互窗口”。 此外,还可使用键盘快捷键 Ctrl+Enter

    Visual Studio 将代码作为单个块发送到交互窗口,以避免出现中间或部分图形。

    (如果未在指定活动环境中打开 Python 项目,Visual Studio 将为“Python 环境”窗口中列出的默认环境打开一个交互窗口。)

    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 is 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()
    

    显示如何将 Visual Studio 编辑器中的代码发送到交互窗口的屏幕截图。

  11. 若要在交互窗口之外查看关系图,请通过在 Visual Studio 主工具栏上使用“调试”>“开始执行(不调试)”命令运行代码。

IPython 有很多其他有用的功能,如转义到系统外壳、变量替换、捕获输出等。 有关详细信息,请参阅 IPython 文档