Использование IPython в интерактивном окне в Visual Studio

Интерактивное окно Visual Studio в режиме IPython — это расширенная интерактивная среда разработки с интерактивными функциями параллельных вычислений. В этой статье объясняется, как использовать IPython в интерактивном окне Visual Studio и получить доступ к стандартным функциям интерактивного окна.

Необходимые компоненты

Примечание.

IronPython не поддерживает IPython, несмотря на то, что этот параметр можно выбрать в форме интерактивных параметров . Дополнительные сведения см. в запросе на функцию (поддержка IPython при переплете IronPython).

Работа с интерактивным окном

Ниже показано, как использовать команды IPython в интерактивном окне. В этом пошаговом руководстве предполагается, что вы используете Anaconda.

  1. В Visual Studio выберите "Просмотреть>другие среды Windows>Python", чтобы открыть окно "Среды Python".

  2. В окне "Среды Python" выберите среду Anaconda.

  3. Перейдите в представление "Пакеты" для среды, чтобы просмотреть установленные пакеты. В раскрывающемся меню выберите "Пакеты " (Conda)". Параметр меню может быть назван pip или Packages.

  4. Убедитесь, что ipython для среды установлены и matplotlib библиотеки.

    Если обе библиотеки не установлены, следуйте инструкциям в руководстве по установке пакетов в среде Python в Visual Studio. Дополнительные сведения см . в окне "Среды Python" — справочник по вкладкам "Пакеты".

  5. Перейдите в представление "Обзор " для среды и выберите параметр "Использовать интерактивный режим IPython".

  6. Выберите "Открыть интерактивное окно", чтобы отобразить интерактивное окно в режиме IPython. Возможно, потребуется сбросить окно, если окно уже открыто.

  7. При открытии интерактивного окна вы увидите первую строку In [1]. Если отображается стандартный запрос >>>, введите в запросе, чтобы убедиться, что окно использует режим IPython. Запрос должен измениться на что-то подобное In [2].

    Снимок экрана: интерактивное окно в режиме IPython в Visual Studio.

  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. После ввода последней строки кода и нажмите клавишу ВВОД, вы увидите встроенный граф:

    Снимок экрана: встроенный граф в интерактивном окне в режиме IPython в Visual Studio.

    Чтобы изменить размер графа, перетащите его в правый нижний угол.

  10. Вместо ввода кода непосредственно в интерактивном окне можно написать код в редакторе Visual Studio и отправить его в интерактивное окно:

    1. Вставьте следующий код в новый файл в редакторе.

    2. Используйте сочетание клавиш CTRL+A , чтобы выбрать код в редакторе.

    3. Щелкните правой кнопкой мыши выбранный код и выберите "Отправить в интерактивный". Вы также можете использовать сочетание клавиш CTRL+ВВОД.

    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.