Вы находитесь на странице: 1из 380

Contents

Python в Visual Studio


Обзор
Общие сведения о поддержке Python
Обзор интегрированной среды разработки Visual Studio
Рабочая нагрузка "Приложения для обработки и анализа данных и
аналитические приложения"
Установка
Установка
Установка интерпретаторов Python
Краткие руководства
Создание веб-приложения на Flask
Создание проекта из шаблона
Открытие и выполнение кода Python в папке
Создание проекта на основе имеющегося кода
Создание проекта из репозитория
Создание проекта из шаблона Cookiecutter
Учебники
Python в Visual Studio
0. Установка средств поддержки Python
1. Создание проекта Python
2. Написание и выполнение кода
3. Использование интерактивного окна REPL
4. Выполнение кода в отладчике
5. Установка пакетов и управление средами Python
6. Работа с Git
Сведения о Django в Visual Studio
1. Создание проекта и решения
2. Создание приложения Django
3. Обработка статических файлов и добавление страниц
4. Использование шаблона веб-проекта Django
5. Аутентификация пользователей
6. Использование шаблона веб-проекта Django для опросов
Знакомство с Flask в Visual Studio
1. Создание проекта и решения
2. Создание приложения Flask
3. Обработка статических файлов и добавление страниц
4. Использование шаблона веб-проекта Flask
5. Использование шаблона веб-проекта опроса Flask
Основные понятия
Проекты Python
Проекты Python
Шаблоны веб-проектов
Шаблон веб-проекта Django
Шаблон облачной службы Azure
Пакет Azure SDK для Python
Практические руководства
Управление средами Python
Управление средами Python
Выбор интерпретатора для проекта
Использование файла requirements.txt для зависимостей
Пути поиска
Справочник по окну "Среда"
Настройка веб-приложений для работы с IIS
Редактирование кода Python
Редактирование кода Python
Код формата
Рефакторинг кода
Использование PyLint
Задание пользовательских команд меню
Интерактивный Python (REPL)
Интерактивный Python (REPL)
Использование IPython REPL
Отладка
Отладка
Отладка кода на удаленных компьютерах с Linux
Публикация в службу приложений Azure в Linux
Взаимодействие с C++
Создание расширения C++ для Python
Отладка в смешанном режиме для Python и C++
Символы для отладки в смешанном режиме
Профилирование
Модульное тестирование
Использование расширения Cookiecutter
Справочник
Шаблоны элементов
Параметры
Работа с Python в Visual Studio под управлением
Windows
21.10.2020 • 24 minutes to read • Edit Online

Python — это популярный язык программирования, который отличается надежностью, гибкостью и


простотой освоения. Его можно бесплатно использовать на любых операционных системах, и он
поддерживается широким сообществом разработчиков. Кроме того, для него доступно множество
бесплатных библиотек. Python поддерживает все способы разработки, включая веб-приложения, веб-
службы, компьютерные программы, скрипты и научные вычисления. Его используют многие университеты,
ученые, профессиональные и непрофессиональные разработчики. Больше узнать об этом языке вы можете
на сайте python.org или в руководстве Python для начинающих.

Visual Studio является мощной интегрированной средой разработки (IDE) на языке Python для Windows.
Visual Studio предоставляет средства с открытым кодом для поддержки языка Python, в том числе рабочие
нагрузки разработки Python и обработки и анализа данных (в Visual Studio 2017 и более поздних
версиях), а также бесплатное расширение "Инструменты Python для Visual Studio" (в Visual Studio 2015 и
более ранних версиях).

Сейчас Python не поддерживается в Visual Studio для Mac, но доступен в Mac и Linux при использовании
Visual Studio Code (см. вопросы и ответы.
Чтобы приступить к работе, выполните указанные ниже действия.

Следуйте инструкциям по установке, чтобы настроить рабочую нагрузку Python.


Эта статья познакомит вас с возможностями Python в Visual Studio.

Выполните одно или несколько кратких руководств, чтобы создать проект. Если вы не уверены, начните
с создания веб-приложения на платформе Flask.

Выполните одно или несколько кратких руководств, чтобы создать проект. Если вы не уверены, сначала
прочитайте статью Quickstart: Open and run Python code in a folder (Краткое руководство. Открытие и
запуск кода Python в папке) или Краткое руководство. Создание первого веб-приложения Python с
помощью Visual Studio.

Пройдите руководство Работа с Python в Visual Studio, в котором описана полная процедура.

NOTE
Visual Studio поддерживает Python версии 2.7, а также с 3.5 по 3.7. Visual Studio можно использовать для
редактирования кода, написанного на языке Python других версий, но эти версии официально не поддерживаются,
а функции, такие как IntelliSense и отладка, могут не работать. Поддержка Python версии 3.8 по-прежнему
находится на стадии разработки. Конкретные сведения о поддержке см. в этой задаче на сайте GitHub.

Поддержка нескольких интерпретаторов


Окружения Python в Visual Studio (изображены ниже в широком развернутом окне) позволяют
единообразно управлять всеми глобальными окружениями Python, окружениями Conda и виртуальными
средами. Visual Studio автоматически обнаруживает установки Python в стандартных расположениях, а
также позволяет настраивать нестандартные варианты установки. В каждом окружении можно легко
управлять пакетами, открывать интерактивное окно этого окружения и получать доступ к папкам
окружения.

Используйте команду Открыть интерактивное окно, чтобы запустить Python в интерактивном режиме в
контексте Visual Studio. Используйте команду Открыть в PowerShell , чтобы открыть отдельное окно
команд в папке выбранной среды. Из этого окна команд можно выполнить любой скрипт Python.

Дополнительные сведения:

Управление средами Python


Справочная информация по вкладкам окна "Окружения Python"

Многофункциональное редактирование, IntelliSense и понимание


кода
Visual Studio предоставляет первоклассный редактор Python, включающий цветовую разметку синтаксиса,
автозаполнение во всем коде и библиотеках, форматирование кода, справку по сигнатурам, рефакторинг,
анализ кода на наличие потенциальных ошибок и подсказки по типам. Visual Studio также предоставляет
уникальные функции, такие как представление классов, переход к определению , поиск всех ссылок и
фрагменты кода. Непосредственная интеграция с интерактивным окном помогает быстро разрабатывать
код на Python, сразу сохраняя его в файле.

Дополнительные сведения:

Документация: Редактирование кода Python


Документация: Форматирование кода
Документация: Рефакторинг кода
Документация: Использование анализатора кода
Общая документация по функциям Visual Studio: Возможности редактора кода

Интерактивное окно
Для каждого окружения Python, с которым умеет работать Visual Studio, можно открыть его интерактивное
окружение (REPL) для интерпретатора Python непосредственно в Visual Studio без открытия отдельного
окна командной строки. Также можно легко переключаться между окружениями. (Чтобы открыть
отдельную командную строку, выберите нужную среду в окне Окружения Python , затем команду
Открыть в PowerShell , как описано ранее в разделе Поддержка нескольких интерпретаторов.)

Кроме того, Visual Studio обеспечивает тесную интеграцию между редактором кода Python и
интерактивным окном. Сочетанием клавиш CTRL +ВВОД можно легко отправить текущую строку кода
(или блок кода) из редактора в интерактивное окно и перейти к следующей строке (или блоку).
Сочетание клавиш CTRL +ВВОД позволяет легко использовать пошаговое выполнение кода без запуска
отладчика. Этим же сочетанием клавиш можно отправить выделенный код в интерактивное окно или
вставить код из интерактивного окна в редактор. Вместе эти возможности позволяют работать с
сегментами кода в интерактивном окне и легко сохранять результаты в файл, открытый в редакторе.

Visual Studio также поддерживает IPython и Jupyter в цикле REPL, включая встроенные диаграммы, .NET и
Windows Presentation Foundation (WPF).
Дополнительные сведения:

Интерактивное окно
IPython в Visual Studio
Система проектов и шаблоны проектов и элементов
NOTE
В Visual Studio 2019 можно открыть папку с кодом Python и выполнить этот код, не создавая проект Visual Studio и
файлы решения. Дополнительные сведения см. в разделе Краткое руководство. Открытие и выполнение кода
Python в папке. Но файл проекта имеет ряд важных преимуществ, которые мы описали в этой статье.

Visual Studio позволяет управлять постоянно возрастающей сложностью проекта. Проект Visual Studio —
это не просто структура папок. Он включает сведения о том, как используются различные файлы и как они
связаны друг с другом. Visual Studio помогает распознавать код приложения, тестовый код, веб-страницы,
JavaScript, скрипты сборки и т. д., что позволяет затем использовать возможности, специфичные для
каждого типа файла. Кроме того, решение Visual Studio помогает управлять несколькими связанными
проектами, например проектом Python и проектом расширения C++.

Шаблоны проектов и элементов автоматизируют процесс настройки различных типов проектов и файлов,
экономя драгоценное время и освобождая разработчика от сложных рутинных операций, в ходе которых
легко допустить ошибку. Visual Studio предоставляет шаблоны для веб-проектов, Azure, обработки и
анализа данных, консольных и других типов проектов, наряду с шаблонами для файлов, таких как классы
Python, модульные тесты, веб-конфигурации Azure, HTML и даже приложения Django.
Дополнительные сведения:

Документация: Управление проектами Python


Документация: Справочник по шаблонам элементов
Документация: Шаблоны проектов Python
Документация: Работа с C++ и Python
Общая документация по функциям Visual Studio: Шаблоны проектов и элементов
Общая документация по функциям Visual Studio: Решения и проекты в Visual Studio

Полнофункциональная отладка
Одним из основных преимуществ Visual Studio является его мощный отладчик. В частности, для Python
среда Visual Studio поддерживает отладку в смешанном режиме на Python и C++, удаленную отладку в
Linux, отладку в интерактивном окне и отладку модульных тестов Python.
В Visual Studio 2019 вы можете выполнить запуск и отладку кода без файла проекта Visual Studio. Пример
см. в статье Quickstart: Open and run Python code in a folder (Краткое руководство. Открытие и выполнение
кода Python в папке).

Дополнительные сведения:

Документация: Отладка Python


Документация: Отладка в смешанном режиме для Python и C++
Документация: Удаленная отладка в Linux
Общая документация по функциям Visual Studio: Обзор функций отладчика Visual Studio

Средства профилирования с широким набором отчетов


Профилирование позволяет узнать, как расходуется время в приложении. Visual Studio поддерживает
профилирование с помощью интерпретаторов на основе CPython и включает сравнение
производительности при различных запусках профилирования.

Дополнительные сведения:

Документация: Средства профилирования для Python


Общая документация по функциям Visual Studio: Обзор возможностей профилирования. (Не все функции
профилирования Visual Studio доступны для Python.)
Средства модульного тестирования
Обнаружение, выполнение и управление тестами в обозревателе тестов Visual Studio, а также легкая
отладка модульных тестов.

Дополнительные сведения:

Документация: Инструменты модульного тестирования для Python


Общая документация по функциям Visual Studio: Модульное тестирование кода.

Пакет Azure SDK для Python


Библиотеки Azure для Python упрощают использование служб Azure в приложениях для Windows, Mac OS X
и Linux. Их можно использовать для создания ресурсов Azure и управления ими, а также для подключения к
службам Azure.

Дополнительные сведения см. в статьях Пакет Azure SDK для Python и Библиотеки Azure для Python.

Вопросы и ответы
В. Доступна ли поддержка Python в Visual Studio для Mac?

О. На данный момент нет , но вы можете проголосовать за эту возможность на сайте сообщества


разработчиков. В документации по Visual Studio для Mac указаны поддерживаемые сейчас типы разработки.
А пока нормальная работа с Python за счет доступных расширений обеспечивается Visual Studio Code в
Windows, Mac и Linux.
В. Что можно использовать для создания пользовательского интерфейса с помощью Python?

О. Основным предложением в этом направлении является Qt Project с привязками для Python, известного
как PySide (официальная привязка) (см. также файлы для скачивания PySide), и PyQt. В настоящее время
поддержки Python в Visual Studio не включает какие-либо конкретные средства для разработки
пользовательского интерфейса.

В. Может ли проект Python сформировать отдельный исполняемый файл?

О. Python является интерпретируемым языком, и выполнение его кода осуществляется по требованию в


подходящем окружении с поддержкой Python, таком как Visual Studio и веб-серверы. Сейчас Visual Studio не
предоставляет инструменты и возможности для создания отдельного исполняемого файла, который, по
сути, представляет собой программу с внедренным интерпретатором Python. Сообществом Python
предоставлены различные средства, позволяющие создать исполняемые файлы, как описано на сайте
StackOverflow. CPython также можно внедрять в приложение машинного кода. Об этом можно узнать в
записи блога Using CPython's Embeddable Zip File (Использование внедряемого ZIP-файла CPython).

Поддержка компонентов
Функции Python можно установить в следующих выпусках Visual Studio, как описано в руководстве по
установке:

Visual Studio 2019 (все выпуски);


Visual Studio 2017 (все выпуски);
Visual Studio 2015 (все выпуски)
Visual Studio 2013 Community
Visual Studio 2013 Express для Web, с обновлением 2 или более поздней версии
Visual Studio 2013 Express для Desktop с обновлением 2 или более поздней версии
Visual Studio 2013 (версии Pro или более высокой версии)
Visual Studio 2012 (версии Pro или более высокой версии)
Visual Studio 2010 с пакетом обновления 1 (версии Pro или более высокой версии; требуется .NET 4.5)
Visual Studio 2015 и более ранние версии доступны на странице visualstudio.microsoft.com/vs/older-
downloads/.

IMPORTANT
Функции полностью поддерживаются только в последней версии Visual Studio. Они доступны и в предыдущих
версиях , но поддерживаются не полностью.

2013 ДЛЯ
ПОДДЕР НАСТОЛЬ
ЖКА 2013 НЫХ 2013 2012 2010 SP 1
PYT H ON 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Управлен ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ие
нескольк
ими
интерпре
таторами

Автоопре ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
деление
популярн
ых
интерпре
таторов

Добавлен ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ие
пользова
тельских
интерпре
таторов

Виртуаль ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ные
среды
2013 ДЛЯ
ПОДДЕР НАСТОЛЬ
ЖКА 2013 НЫХ 2013 2012 2010 SP 1
PYT H ON 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

PIP и ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
легкая
установк
а

2013 ДЛЯ
СИСТЕМА НАСТОЛЬ
ПРОЕКТО 2013 НЫХ 2013 2012 2010 SP 1
В 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Создание ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
нового
проекта
из
существу
ющего
кода

Показать ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
все
файлы

Система ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
управлен
ия
версиями

Интеграц ✔ ✔ ✔ ✔ ✔ ✔ ✔1 ✗
ия с Git

2013 ДЛЯ
НАСТОЛЬ
РЕДАКТИ 2013 НЫХ 2013 2012 2010 SP 1
РОВАНИЕ 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Подсветк ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
а
синтакси
са

Автозаве ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ршение

Справка ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
по
сигнатур
ам

Вывод ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
кратких
сведений
2013 ДЛЯ
НАСТОЛЬ
РЕДАКТИ 2013 НЫХ 2013 2012 2010 SP 1
РОВАНИЕ 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Представ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ление
классов и
обозрева
тель
объектов

Панель ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
навигаци
и

Перейти ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
к
определе
нию

Перейти ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
к

Найти ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
все
ссылки

Автомати ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ческие
отступы

Формати ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
рование
кода

Рефактор ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
инг —
переимен
ование

Рефактор ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
инг —
извлечен
ие
метода

Рефактор ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
инг —
добавлен
ие и
удаление
импорто
в

PyLint ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
2013 ДЛЯ
ИНТЕРАКТ НАСТОЛЬ
ИВНОЕ 2013 НЫХ 2013 2012 2010 SP 1
ОКНО 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Интеракт ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ивное
окно

IPython и ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
встроенн
ые графы

2013 ДЛЯ
НАСТОЛЬ
РАБОЧИЙ 2013 НЫХ 2013 2012 2010 SP 1
СТОЛ 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Приложе ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
ние для
консоли
и
Windows

IronPytho ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
n WPF (с
конструк
тором
XAML)

Формы ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
IronPytho
n для
Windows

2013 ДЛЯ
НАСТОЛЬ
2013 НЫХ 2013 2012 2010 SP 1
ИНТЕРНЕТ 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Веб- ✔ ✔ ✔ ✗ ✔ ✔ ✔ ✔
проект
Django

Веб- ✔ ✔ ✔ ✗ ✔ ✔ ✔ ✔
проект
Bottle

Веб- ✔ ✔ ✔ ✗ ✔ ✔ ✔ ✔
проект
Flask

Универса ✔ ✔ ✔ ✗ ✔ ✔ ✔ ✔
льный
веб-
проект
2013 ДЛЯ
НАСТОЛЬ
2013 НЫХ 2013 2012 2010 SP 1
A Z URE 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Разверты ✔ ✔ ✔ ✗ ✔ ✔ ✔ ✔2
вание на
веб-
сайте

Разверты ✔ ✔ ✔ ✗ ✔4 ✔4 ✔3 ✗
вание в
веб-роли

Разверты ? ? ? ✗ ✔4 ✔4 ✔3 ✗
вание в
рабочей
роли

Запуск в ? ? ? ✗ ✔4 ✔4 ✔3 ✗
эмулятор
е Azure

Удаленна ✔ ✔ ✔ ✗ ✔6 ✔8 ✔8 ✗
я
отладка

Присоеди ✔ ✔ ✔ ✗ ✔7 ✔7 ✗ ✗
нение
обозрева
теля
сервера

2013 ДЛЯ
ШАБЛОН НАСТОЛЬ
Ы 2013 НЫХ 2013 2012 2010 SP 1
DJA N GO 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Отладка ✔ ✔ ✔ ✗ ✔ ✔ ✔ ✔

Автозаве ✔ ✔ ✔ ✗ ✔5 ✔5 ✔ ✔
ршение

Автозаве ✔ ✔ ✔ ✗ ✔5 ✔5 ✗ ✗
ршения
для CSS и
JavaScript

2013 ДЛЯ
НАСТОЛЬ
2013 НЫХ 2013 2012 2010 SP 1
ОТЛАДКА 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Отладка ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
2013 ДЛЯ
НАСТОЛЬ
2013 НЫХ 2013 2012 2010 SP 1
ОТЛАДКА 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Отладка ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
без
проекта

Отладка ✔ ✔ ✔ ✔ ✗ ✔ ✔ ✔

присоеди
нение к
редактир
ованию

Отладка ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✗
в
смешанн
ом
режиме

Удаленна ✔ ✔ ✔ ✔ ✗ ✔ ✔ ✔
я
отладка
(Windows,
Mac OS X
Linux)

Окно ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
интеракт
ивной
отладки

2013 ДЛЯ
НАСТОЛЬ
ПРОФИЛИ 2013 НЫХ 2013 2012 2010 SP 1
РОВАНИЕ 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Профили ✔ ✔ ✔ ✗ ✗ ✔ ✔ ✔
рование

2013 ДЛЯ
НАСТОЛЬ
ПРОВЕРК 2013 НЫХ 2013 2012 2010 SP 1
А 2017+ 2015 C OMM СИСТЕМ 2013 W EB P RO + P RO + P RO +

Обозрева ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✗
тель
тестов

Запустит ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✗
ь тест

Отладка ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✗
тестов
1. Поддержка Git для Visual Studio 2012 доступна в расширении "Инструменты Visual Studio для Git",
которое можно найти на веб-сайте Visual Studio Marketplace.

2. Для развертывания на веб-сайте Azure требуется пакет Azure SDK для .NET 2.1 — Visual Studio 2010 с
пакетом обновления 1 (SP1). Более поздние версии не поддерживают Visual Studio 2010.

3. Поддержка веб-роли и рабочей роли Azure требует пакет Azure SDK для .NET 2.3 — VS 2012 или
более поздней версии.

4. Поддержка веб-роли и рабочей роли Azure требует пакет Azure SDK для .NET 2.3 — VS 2013 или
более поздней версии.

5. Редактор шаблонов Django в Visual Studio 2013 имеет несколько известных проблем, которые
устраняются при установке обновления 2.

6. Требуется Windows 8 или более поздняя версия. Visual Studio 2013 Express для веб-сайта не
использует диалоговое окно присоединения к процессу, но при этом удаленная отладка веб-
сайта Azure возможна с использованием команды Attach Debugger (Python) (Подсоединить
отладчик Python) в обозревателе серверов. Для удаленной отладки требуется пакет Azure SDK
для .NET 2.3 — Visual Studio 2013 или более поздней версии.

7. Требуется Windows 8 или более поздняя версия. Команда присоединения отладчика (Python) в
обозревателе серверов требует пакета Azure SDK для .NET 2.3 — Visual Studio 2013 или более
поздней версии.

8. Требуется Windows 8 или более поздняя версия.


Введение в интегрированную среду разработки
Visual Studio (Python)
21.10.2020 • 10 minutes to read • Edit Online

Интегрированная среда разработки Visual Studio — это оригинальная среда запуска для Python и других
языков программирования, которая позволяет редактировать, отлаживать и тестировать код, а затем
публиковать приложения. Интегрированная среда разработки (IDE) представляет собой
многофункциональную программу, которую можно использовать для различных аспектов разработки
программного обеспечения. Помимо стандартного редактора и отладчика, которые предлагаются в
большинстве сред IDE, Visual Studio включает средства дополнения кода, графические среды REPL и другие
функции, позволяющие упростить процесс разработки программного обеспечения.

На этом рисунке показана среда Visual Studio, в которой открыт проект Python и несколько окон с
основными инструментами, которые вы будете часто использовать.

Обозреватель решений (правый верхний угол) позволяет просматривать файлы кода, а также
перемещаться по ним и управлять ими. Обозреватель решений позволяет упорядочить код путем
объединения файлов в решения и проекты.

Рядом с обозревателем решений располагается окно Среды Python , где вы можете управлять
интерпретаторами Python, которые установлены на компьютере.
Можно также открыть и запустить код Python в папке, не создавая файлы проекта и решения Visual
Studio. Дополнительные сведения см. в разделе Краткое руководство. Открытие и выполнение
кода Python в папке.

В окне редактора (центр), где вы, скорее всего, будете проводить большую часть времени,
отображается содержимое файла. Здесь можно редактировать код Python, перемещаться по
структуре кода и настраивать точки останова для сеансов отладки. Вы можете выбрать фрагмент
кода Python и нажать сочетание клавиш Ctrl+ВВОД, чтобы выполнить выбранный код в
интерактивном окне REPL.

В окно вывода (в центре внизу) Visual Studio отправляет уведомления, такие как сообщения об
отладке и ошибках, предупреждения, сообщения о состоянии публикаций и многие другие. Каждый
источник сообщений имеет собственную вкладку.

Объект интерактивное окно REPL для Python отображается в той же области, что и окно вывода.
Team Explorer (правый нижний угол) позволяет отслеживать рабочие элементы и использовать код
совместно с другими пользователями с помощью технологий управления версиями, таких как Git и
система управления версиями Team Foundation (TFVC).

Выпуски
Visual Studio предоставляется для Windows и Mac, но поддержка Python доступна только в Visual Studio для
Windows.
Существует три выпуска Visual Studio для Windows: Community, Professional и Enterprise. Сведения о
функциях, поддерживаемых в каждом выпуске, см. на странице Сравнение выпусков Visual Studio.

Популярные средства повышения производительности


Ниже перечислены некоторые популярные возможности Visual Studio, которые помогут вам повысить
продуктивность разработки программного обеспечения.

IntelliSense
IntelliSense — это набор функций, отображающих сведения о коде непосредственно в редакторе и в
некоторых случаях автоматически создающих небольшие отрывки кода. По сути, это базовая
документация, встроенная в редактор, с которой вам не приходится искать информацию где-то еще.
Функции IntelliSense зависят от языка. Подробности для Python вы найдете в этой статье о
редактировании кода Python. На следующем рисунке показано, как IntelliSense отображает список
членов типа:

Рефакторинг

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

Анализ кода проверяет наличие ошибок и типичных проблем в коде Python, помогая вам
придерживаться правильных шаблонов кодирования на Python.

Поле поиска

Среда Visual Studio может показаться сложной, ведь там столько разных меню, параметров и свойств.
Поле поиска позволяет быстро найти нужное содержимое в Visual Studio. Когда вы начнете вводить в
поле то, что вы ищете, Visual Studio представит результаты, один из которых точно вам подойдет.
Если вам нужно добавить функциональные возможности в Visual Studio, например поддержку
дополнительных языков программирования, поле поиска предоставляет результаты, которые
открывают Visual Studio Installer для установки рабочей нагрузки или отдельного компонента.

Волнистые линии и быстрые действия

Волнистые линии обозначают ошибки или потенциальные проблемы кода прямо во время ввода. Эти
визуальные подсказки позволяют устранять проблемы немедленно и не ждать, пока ошибка будет
обнаружена во время сборки или запуска программы. Если навести указатель мыши на волнистую
линию, на экран будут выведены дополнительные сведения об ошибке. Кроме того, в поле слева
может появляться значок лампочки с быстрыми действиями по устранению ошибки.
"Перейти к определению" и "Показать определение"
Функция Перейти к определению позволяет перейти туда, где определена выбранная функция
или тип. Команда Показать определения отображает определение в том же окне, не открывая
другой файл. Команда Поиск всех ссылок также будет полезна для поиска мест , где используется и
(или) определяется выбранный идентификатор.

Мощные функции для Python


Выполнение кода без проекта

Начиная с Visual Studio 2019, можно открыть папку, содержащую код Python, и выполнить такие
функции, как IntelliSense и отладка, не создавая проект Visual Studio для кода.

Совместная работа с помощью Visual Studio

Visual Studio Live Share позволяет редактировать и отлаживать код совместно с другими
пользователями в реальном времени независимо от используемых вами языков программирования и
создаваемых типов приложений.

Интерактивная оболочка REPL для Python

Visual Studio предоставляет интерактивное окно для цикла REPL (read–eval–print loop) отдельно для
каждого окружения Python, что дает ряд преимуществ над интерфейсом REPL из командной строки
python.exe. В интерактивном окне вы можете ввести произвольный код Python и сразу же увидеть
результаты его выполнения.

Отладка
Visual Studio предоставляет широкие возможности отладки для Python, включая присоединение к
выполняемым процессам, вычисление выражений в окнах контрольных значений и
интерпретации, проверку локальных переменных, точки останова, инструкции "Шаг с заходом",
"Шаг с выходом", "Шаг с обходом", команду Задать следующий оператор и многое другое. Также
есть возможность удаленно отлаживать код Python, выполняющийся на компьютерах Linux.

Взаимодействие с C++

Многие библиотеки для Python создаются на языке C++ для повышения производительности. Visual
Studio предоставляет широкие возможности для разработки расширений для C++, в том числе
поддерживает отладку в смешанном режиме.
Профилирование

Если вы используете интерпретатор на основе CPython, производительность кода Python можно


оценить прямо в Visual Studio.

Модульное тестирование

Visual Studio предоставляет встроенную поддержку для обнаружения, запуска и отладки модульных
тестов в контексте интегрированной среды разработки.
Следующие шаги
Подробнее изучить возможности по работе с Python в Visual Studio вам помогут следующие руководства.

Краткое руководство. Создание веб-приложения на Flask

Работа с Python в Visual Studio

Начало работы с веб-платформой Django в Visual Studio

Начало работы с веб-платформой Flask в Visual Studio

См. также
Откройте для себя другие возможности Visual Studio
Посетите visualstudio.microsoft.com
Читайте блог Visual Studio
Установка поддержки для обработки и анализа
данных в Visual Studio
21.10.2020 • 7 minutes to read • Edit Online

Рабочая нагрузка "Приложения для обработки и анализа данных и аналитические приложения", которую
вы можете выбрать и установить в установщике Visual Studio, объединяет возможности нескольких языков
и предназначенных для них дистрибутивов сред выполнения:

Python и Anaconda
F# с платформой .NET Framework
R и Microsoft R Client
Python
F# с платформой .NET Framework

R и Python — это два основных языка скриптов, используемые для обработки и анализа данных. Они оба
довольно просты в изучении и поддерживаются обширной экосистемой пакетов. Эти пакеты позволяют
реализовать широкий спектр сценариев, таких как получение данных, очистка, обучение модели,
развертывания и построение графиков. F# также представляет собой мощный функционально-
императивный язык .NET, подходящий для самых разных задач по обработке данных.

Python — это основной язык скриптов, используемый для обработки и анализа данных. Python довольно
прост в изучении и поддерживается обширной экосистемой пакетов. Эти пакеты позволяют реализовать
широкий спектр сценариев, таких как получение данных, очистка, обучение модели, развертывания и
построение графиков. F# также представляет собой мощный функционально-императивный язык .NET,
подходящий для самых разных задач по обработке данных. (Для языка R мы рекомендуем записные книжки
Azure.)
Параметры рабочей нагрузки
По умолчанию эта рабочая нагрузка устанавливает следующие параметры, которые можно изменить в
разделе сводки рабочей нагрузки в установщике Visual Studio:

Поддержка языка F# для классических приложений


Python:
Поддержка языка Python
Поддержка веб-приложений Python

Поддержка языка F#
Python:
Поддержка языка Python
64-разрядная версия Anaconda3, дистрибутив Python, включающий в себя разнообразные
библиотеки обработки и анализа данных, а также интерпретатор Python.
Поддержка веб-приложений Python
Поддержка шаблонов Cookiecutter
R:
Поддержка языка R
Поддержка средств разработки R в среде выполнения
Microsoft R Client (предоставляемый корпорацией Майкрософт полностью совместимый и
поддерживаемый сообществом интерпретатор R с библиотеками ScaleR для ускорения
вычислений в отдельных узлах или кластерах. Вы также можете использовать R из CRAN.)

Интеграция SQL Server


SQL Server поддерживает использование как R, так и Python для углубленной аналитики внутри SQL Server.
Поддержка R включена в SQL Server 2016 и более поздних версий, поддержка Python — в SQL Server 2017
CTP 2.0 и более поздних версий.
SQL Server поддерживает использование Python для углубленной аналитики внутри SQL Server. Поддержка
Python доступна в SQL Server 2017 CTP 2.0 и более поздних версий.
Возможность запускать код там же, где находятся ваши данные, обеспечивает следующие преимущества.

Отказ от перемещения данных: вместо перемещения данных из базы данных в приложение или
модель вы можете создавать приложения в базе данных. Это позволяет преодолеть препятствия,
связанные с безопасностью, соответствием, управлением, целостностью, а также ряд аналогичных
трудностей, связанных с перемещением больших объемов данных. Вы также можете использовать
наборы данных, которые не помещаются в память клиентского компьютера.

Простота развертывания: когда ваша модель готова, вы можете развернуть ее в рабочей среде,
просто внедрив в скрипт T-SQL. Любое клиентское приложение SQL, написанное на любом языке,
может воспользоваться преимуществами моделей и аналитики через вызов хранимой процедуры.
Никакие отдельные интеграции языка при этом не требуются.

Производительность и масштабируемость корпоративного уровня : расширенные


возможности SQL Server, такие как таблицы в памяти и индексы columnstore с
высокопроизводительными масштабируемыми API в пакетах RevoScale. Отказ от перемещения
данных также позволяет обойти ограничения, связанные с памятью клиента, которые проявляются
при увеличении объема данных или повышении производительности приложения.

Полноценная расширяемость: вы можете установить и запустить в SQL Server любой из


последних пакетов с открытым исходным кодом, чтобы создать приложения углубленного обучения
и искусственного интеллекта на базе огромного объема данных в SQL Server. Установка пакета в SQL
Server осуществляется также просто, как и на локальном компьютере.
Широкая доступность без дополнительных затрат : интеграции языка доступны во всех
выпусках SQL Server 2017 и более поздних версий, включая экспресс-выпуск.

Чтобы получить все возможности, обеспечиваемые интеграцией с SQL Server, установите рабочую нагрузку
Хранение и обработка данных с параметром SQL Ser ver Data Tools в установщике Visual Studio. Этот
параметр позволяет использовать IntelliSense, выделение синтаксиса и функции развертывания для SQL.

Дополнительные сведения:

Работа с SQL Server и R


Углубленная аналитика в базе данных с R в SQL Server 2016 (блог)

Python в SQL Server 2017: расширенное машинное обучение в базе данных (блог)

Дополнительные службы и пакеты SDK


Кроме возможностей, предоставляемых рабочей нагрузкой "Приложения для обработки и анализа данных
и аналитические приложения", при обработке и анализе данных можно также применять службу Azure
Notebooks и пакет Azure SDK для Python.
Пакет SDK Azure для Python — это удобное средство для работы со службами Microsoft Azure из
приложений Windows, Mac и Linux. Дополнительные сведения см. в статье Пакет Azure SDK для Python.

Azure Notebooks (сейчас находится на этапе предварительной версии) предоставляет свободный доступ по
сети к записным книжкам Jupyter, работающими в облаке на платформе Microsoft Azure. Эта служба
содержит примеры записных книжек на языках Python, R и F#, с которых можно начать работу. Посетите
notebooks.azure.com.
Как установить поддержку Python в Visual Studio
под управлением Windows
21.10.2020 • 13 minutes to read • Edit Online

Чтобы установить поддержку Python для Visual Studio (Инструменты Python для Visual Studio или
PTVS), выполните инструкции из раздела, который соответствует вашей версии Visual Studio:
Visual Studio 2017 и Visual Studio 2019
Visual Studio 2015
Visual Studio 2013 и более ранние версии
Чтобы быстро проверить поддержку Python после установки, откройте интерактивное окно
Python . Для этого нажмите клавиши ALT +I и введите 2+2 . Если вы не увидите результат 4 ,
проверьте выполненные действия.

TIP
Рабочая нагрузка Python содержит полезное расширение Cookiecutter, которое предоставляет графический
пользовательский интерфейс для поиска шаблонов, ввода параметров шаблонов и создания проектов и
файлов. Дополнительные сведения см. в статье Использование расширения Cookiecutter.

NOTE
Сейчас Python не поддерживается в Visual Studio для Mac, однако доступен в Mac и Linux посредством Visual
Studio Code. См. вопросы и ответы.

Visual Studio 2019 и Visual Studio 2017


1. Скачайте и запустите последнюю версию Visual Studio Installer. Если вы уже установили Visual
Studio, запустите Visual Studio Installer, выберите вариант Изменить (см. раздел Изменение
Visual Studio) и перейдите к шагу 2.
Установка Visual Studio 2019 Community

TIP
Выпуск Community предназначен для индивидуальных разработчиков, использования при аудиторном
обучении и в научных исследованиях , а также разработки решений с открытым кодом. Если
программу планируется использовать в других целях , установите Visual Studio 2019 Professional или
Visual Studio 2019 Enterprise.

2. В установщике предлагается список рабочих нагрузок, то есть групп связанных параметров для
определенных целей разработки. Для Python выберите рабочую нагрузку Разработка на
Python .
Необязательно: если вы занимаетесь обработкой и анализом данных, также рекомендуется
установить рабочую нагрузку Приложения для обработки и анализа данных и
аналитические приложения. Эта рабочая нагрузка включает в себя поддержку языков
Python, R и F#. Дополнительные сведения см. в разделе Рабочая нагрузка "Приложения для
обработки и анализа данных и аналитические приложения".

NOTE
Рабочие нагрузки для Python и обработки и анализа данных доступны только в Visual Studio2017
версии 15.2 и выше.

Необязательно: если вы занимаетесь обработкой и анализом данных, также рекомендуется


установить рабочую нагрузку Приложения для обработки и анализа данных и
аналитические приложения. Эта рабочая нагрузка включает в себя поддержку Python и F#.
Дополнительные сведения см. в разделе Рабочая нагрузка "Приложения для обработки и
анализа данных и аналитические приложения".

3. В правой области установщика при необходимости выберите дополнительные параметры.


Чтобы принять параметры по умолчанию, пропустите этот шаг.

ПАРАМЕТР ОПИСАНИЕ
ПАРАМЕТР ОПИСАНИЕ

Дистрибутивы Python Выберите любое сочетание доступных


дистрибутивов 32- и 64-разрядных версий
Python 2, Python 3, Miniconda, Anaconda2 и
Anaconda3, с которыми вы планируете работать.
Каждый дистрибутив включает в себя
интерпретатор, среду выполнения и библиотеки. В
частности, Anaconda — это открытая платформа
обработки и анализа данных , которая включает в
себя множество предварительно установленных
пакетов. (Вы можете в любой момент вернуться в
установщик Visual Studio, чтобы добавить или
удалить дистрибутивы.) Примечание. Если вы
установили дистрибутив без использования
установщика Visual Studio, вам не нужно выполнять
дополнительные действия. Visual Studio
автоматически определяет существующие
установки Python. См. Окно "Окружения Python".
Кроме того, если доступна более новая версия
Python, чем показанная в установщике, то вы
можете установить эту версию отдельно, и Visual
Studio обнаружит ее.

Под д ержка шаблонов Cookiecutter Устанавливает графический пользовательский


интерфейс Cookiecutter для поиска шаблонов,
ввода их параметров и создания проектов и
файлов. См. раздел Использование расширения
Cookiecutter.

Под д ержка веб- приложений Python Устанавливает средства для разработки веб-
приложений, включая поддержку редактирования
кода HTML, CSS и JavaScript, а также шаблоны
проектов на основе платформ Bottle, Flask и Django.
См. статью Шаблоны веб-проектов Python.

Под д ержка Интернета вещей д ля Python Поддерживает разработку для Windows IoT Core с
помощью Python.

Встроенные сред ства разработки Python Устанавливает компилятор C++ и другие


компоненты, необходимые для разработки
собственных расширений для Python. См. статью
Создание расширения C++ для Python. Чтобы
обеспечить полную поддержку С ++, установите
рабочую нагрузку Разработка классических
приложений на C++ .

Основные инструменты облачных служб Обеспечивает дополнительную поддержку для


Azure разработки облачных служб Azure на Python. См.
статью Проекты облачных служб Azure.

ПАРАМЕТР ОПИСАНИЕ
ПАРАМЕТР ОПИСАНИЕ

Дистрибутивы Python Выберите любое сочетание доступных


дистрибутивов 32- и 64-разрядных версий
Python 2, Python 3, Miniconda, Anaconda2 и
Anaconda3, с которыми вы планируете работать.
Каждый дистрибутив включает в себя
интерпретатор, среду выполнения и библиотеки. В
частности, Anaconda — это открытая платформа
обработки и анализа данных , которая включает в
себя множество предварительно установленных
пакетов. (Вы можете в любой момент вернуться в
установщик Visual Studio, чтобы добавить или
удалить дистрибутивы.) Примечание. Если вы
установили дистрибутив без использования
установщика Visual Studio, вам не нужно выполнять
дополнительные действия. Visual Studio
автоматически определяет существующие
установки Python. См. Окно "Окружения Python".
Кроме того, если доступна более новая версия
Python, чем показанная в установщике, то вы
можете установить эту версию отдельно, и Visual
Studio обнаружит ее.

Под д ержка шаблонов Cookiecutter Устанавливает графический пользовательский


интерфейс Cookiecutter для поиска шаблонов,
ввода их параметров и создания проектов и
файлов. См. раздел Использование расширения
Cookiecutter.

Под д ержка веб- приложений Python Устанавливает средства для разработки веб-
приложений, включая поддержку редактирования
кода HTML, CSS и JavaScript, а также шаблоны
проектов на основе платформ Bottle, Flask и Django.
См. статью Шаблоны веб-проектов Python.

Встроенные сред ства разработки Python Устанавливает компилятор C++ и другие


компоненты, необходимые для разработки
собственных расширений для Python. См. статью
Создание расширения C++ для Python. Чтобы
обеспечить полную поддержку С ++, установите
рабочую нагрузку Разработка классических
приложений на C++ .

Основные инструменты облачных служб Обеспечивает дополнительную поддержку для


Azure разработки облачных служб Azure на Python. См.
статью Проекты облачных служб Azure.

4. После установки в установщике предлагаются команды для изменения, запуска, восстановления


и удаления Visual Studio. Если доступны обновления для установленных компонентов Visual
Studio, кнопка Изменить меняется на Обновить. (Команду Изменить в этом случае можно
выбрать в раскрывающемся меню.) Запускать среду Visual Studio и установщик можно также из
меню Пуск в Windows. Для этого выполните поиск по запросу "Visual Studio".
Устранение неполадок
Если у вас возникли проблемы при установке или запуске Python в Visual Studio, попробуйте сделать
следующее:

Определите, возникает ли та же ошибка при использовании Python CLI, то есть при запуске
python.exe из командной строки.
Воспользуйтесь восстановлением Visual Studio.
Восстановите или переустановите Python через Параметры > Приложения и компоненты в
Windows.
Пример ошибки. Не удалось запустить интерактивный процесс:
System.ComponentModel.Win32Exception (0x80004005): Неизвестная ошибка (0xc0000135) в
Microsoft.PythonTools.Repl.PythonInteractiveEvaluator.d__43.MoveNext().

Visual Studio 2015


1. Чтобы запустить установщик Visual Studio, откройте Панель управления > Программы и
компоненты, затем выберите Microsoft Visual Studio 2015 и нажмите кнопку Изменить.

2. В самом установщике выберите действие Изменить.


3. Выберите Языки программирования > Инструменты Python для Visual Studio и
щелкните Далее :

4. Когда завершится работа установщика Visual Studio, установите любой интерпретатор Python на
свой выбор. Visual Studio 2015 поддерживает только Python версии 3.5 и более ранних. При
использовании более поздних версий отображается сообщение об ошибке, например
Неподдерживаемая версия Python 3.6 ). Если интерпретатор уже установлен, но Visual
Studio не обнаруживает его автоматически, см. руководство по определению существующего
окружения вручную.

Visual Studio 2013 и более ранние версии


1. Установите версию Инструментов Python для Visual Studio, соответствующую вашей версии
Visual Studio.
Visual Studio 2013: PTVS 2.2.2 для Visual Studio 2013 В Visual Studio 2013 этот процесс можно
запустить через диалоговое окно Файл > Новый проект .
Visual Studio 2010 и 2012: PTVS 2.1.1 для Visual Studio 2010 и 2012
2. Selecting and installing Python interpreters (Установка и настройка интерпретаторов Python). Если
интерпретатор уже установлен, но Visual Studio не обнаруживает его автоматически, см.
руководство по определению существующего окружения вручную.

Расположения установки
По умолчанию поддержка Python устанавливается для всех пользователей на компьютере.

В Visual Studio 2019 и Visual Studio 2017 рабочая нагрузка Python устанавливается в каталог
%ProgramFiles(x86)%\Microsoft Visual Studio\<версия_Visual_Studio>\
<выпуск_Visual_Studio>Common7\IDE\Extensions\Microsoft\Python, где <версия_Visual_Studio> — это
2019 или 2017, а <выпуск_Visual_Studio> — Community, Professional или Enterprise.
В Visual Studio 2015 и более ранних версиях используются такие пути установки:

32-разрядная версия.
Путь: %Program Files(x86)%\Microsoft Visual Studio
<VS_ver>\Common7\IDE\Extensions\Microsoft\Python Tools for Visual Studio\<версия_PTVS>
Расположение пути в реестре: HKEY_LOCAL_MACHINE\Software\Microsoft\PythonTools\
< версия_Visual_Studio>\InstallDir
64-разрядная версия.
Путь: %Program Files%\Microsoft Visual Studio
<VS_ver>\Common7\IDE\Extensions\Microsoft\Python Tools for Visual Studio\<версия_PTVS>
Расположение пути в реестре:
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\PythonTools\
< версия_Visual_Studio>\InstallDir
Здесь:

<VS_ver> принимает одно из этих значений:


14.0 for Visual Studio 2015
12.0 for Visual Studio 2013
11.0 for Visual Studio 2012
10.0 for Visual Studio 2010
<PTVS_ver> — это номер версии, например 2.2.2, 2.1.1, 2.0, 1.5, 1.1 или 1.0.
Пользовательские установки (для версии 1.5 и более ранних)
Инструменты Python для Visual Studio 1.5 и более ранних версий можно установить только для
текущего пользователя. Путь установки будет выглядеть так: %LocalAppData%\Microsoft\VisualStudio\
<версия_Visual_Studio>\Extensions\Microsoft\Python Tools for Visual Studio\<версия_PTVS> . Здесь
<версия_Visual_Studio> и <версия_PTVS> имеют то же значение, которое описано выше.
Установка интерпретаторов Python
21.10.2020 • 7 minutes to read • Edit Online

По умолчанию при установке рабочей нагрузки Python для разработки в Visual Studio 2017 и более
поздних версий также устанавливается Python 3 (64-разрядная версия). При необходимости вы можете
установить 32-разрядную и 64-разрядную версии Python 2, Python 3 вместе с Miniconda (Visual
Studio 2019) или Anaconda 2/Anaconda 3 (Visual Studio 2017), как описано в руководстве по установке.
Кроме того, вы можете установить стандартные интерпретаторы из диалогового окна Add Environment
(Добавление среды). Выберите команду Add Environment (Добавление среды) в окне Python
Environments (Среды Python) или в панели инструментов Python, выберите вкладку Python installation
(Установка Python), укажите интерпретаторы для установки и нажмите Install (Установить).
Кроме того, любой интерпретатор из приведенной ниже таблицы можно установить вручную, не
используя Visual Studio Installer. Например, если вы установили Anaconda 3 еще до установки Visual Studio,
нет необходимости снова устанавливать этот дистрибутив с помощью Visual Studio Installer. Вы также
можете установить интерпретатор вручную, если, например, доступна новая версия, которая пока что не
отображается в установщике Visual Studio.

NOTE
Visual Studio поддерживает Python версии 2.7, а также 3.5 и выше. Visual Studio можно использовать для
редактирования кода, написанного на языке Python других версий, но эти версии официально не
поддерживаются, а функции, такие как IntelliSense и отладка, могут не работать.

Для Visual Studio 2015 и более ранних версий нужно вручную установить один из
интерпретаторов.

Visual Studio (любой версии) автоматически обнаруживает все установленные интерпретаторы Python и
окружения для них, проверяя значения в реестре (согласно описанию регистрации Python в реестре
Windows 514 PEP). Установки Python обычно находятся в разделе
HKEY_LOCAL_MACHINE\SOFTWARE\Python (32-разрядная версия) и
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Python (64-разрядная версия), затем в узлах для
распределения, таких как PythonCore (CPython) и ContinuumAnalytics (Anaconda).

Если Visual Studio не сможет обнаружить установленное окружение, см. раздел Указание существующего
окружения вручную.

Visual Studio отображает все известные окружения в окне Окружения Python и автоматически
обнаруживает обновления для существующих интерпретаторов.

ИНТЕРПРЕТАТОР DESC RIP T IO N


ИНТЕРПРЕТАТОР DESC RIP T IO N

CPython Собственный и самый используемый интерпретатор


доступен в 32- и 64-разрядных версиях (рекомендуется
32-разрядная). Он предоставляет последние
возможности языка, максимальную совместимость
пакета Python, полную поддержку отладки и
взаимодействие с IPython. См. также статью о
сравнении Python 2 и Python 3. Имейте в виду , что Visual
Studio 2015 и более ранние версии не поддерживают
Python 3.6, и в них может появиться ошибка
Непод д ерживаемая версия Python 3.6 .
Используйте Python 3.5 или более раннюю версию.

IronPython Реализация .NET для Python (доступна 32- и 64-


разрядная версия), обеспечивающая взаимодействие с
C#, F# и Visual Basic, доступ к API-интерфейсам .NET,
стандартную отладку Python (но не отладку в
смешанном режиме C++) и отладку в смешанном
режиме IronPython и C#. Однако IronPython не
поддерживает виртуальные среды.

Anaconda Открытая платформа для анализа и обработки данных


на базе Python, которая включает в себя последнюю
версию CPython и большинство пакетов со сложной
установкой. Рекомендуем использовать этот
интерпретатор, если вы не можете определиться.

PyPy Реализация JIT для Python с высокопроизводительной


трассировкой, которая хорошо подходит для долго
выполняющихся программ и ситуаций, когда вы
обнаружили проблемы с производительностью,
которые не удается устранить другими способами.
Работает с Visual Studio, но имеет ограниченную
поддержку расширенных возможностей отладки.

Jython Реализация Python на виртуальной машине Java (JVM).


Аналогично IronPython, код, выполняемый в Jython,
может взаимодействовать с классами и библиотеками
Java, но не может использовать многие библиотеки,
предназначенные для CPython. Работает с Visual Studio,
но имеет ограниченную поддержку расширенных
возможностей отладки.

Сведения о новых способах обнаружения сред Python см. в статье PTVS Environment Detection
(Обнаружение среды PTVS) на сайте github.com.

Перемещение интерпретатора
Если вы переместите существующий интерпретатор в новое расположение с помощью средств файловой
системы, Visual Studio не сможет отследить изменение автоматически.

Если изначально вы указали расположение интерпретатора в окне Окружения Python , укажите


новое расположение, изменив параметры окружения на вкладке Настройка в этом же окне. См.
раздел Указание существующего окружения вручную.

Если вы установили интерпретатор с помощью установщика, выполните следующие действия для


переустановки интерпретатора в новом расположении:

1. Верните интерпретатор Python в исходное расположение.


2. Удалите интерпретатор с помощью установщика, который очистит записи в реестре.
3. Установите интерпретатор заново в нужном расположении.
4. Перезапустите Visual Studio и убедитесь, что новое расположение обнаружено автоматически и
указано вместо старого.

Такой процесс позволяет гарантировать, что в реестре правильно обновятся записи о расположении
интерпретатора, которое использует Visual Studio. Также установщик устраняет все возможные
побочные эффекты.

См. также раздел


Управление средами Python
Выбор интерпретатора для проекта
Использование файла requirements.txt для зависимостей
Пути поиска
Справочная информация по окну "Окружения Python"
Краткое руководство. Создание первого веб-
приложения Python с помощью Visual Studio
21.10.2020 • 14 minutes to read • Edit Online

В рамках этого краткого (на 5–10 минут ) знакомства с Visual Studio в качестве IDE для Python создается
простое веб-приложение Python на платформе Flask. Вы создадите проект при помощи дискретных
действий, которые помогут ознакомиться с базовыми функциями Visual Studio.

Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не
сделали этого. В установщике выберите рабочую нагрузку Разработка на Python .

Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не
сделали этого. В установщике выберите рабочую нагрузку Разработка на Python .

Создание проекта
Ниже приведены инструкции по созданию пустого проекта, который служит контейнером для
приложения:

1. Откройте Visual Studio 2017.


2. В верхней строке меню последовательно выберите Файл > Создать > Проект .
3. В диалоговом окне Новый проект введите в поле поиска в правом верхнем углу "Веб-проект
Python", в списке по центру выберите Веб- проект , присвойте проекту имя, например HelloPython, и
нажмите кнопку ОК.

Если вы не видите шаблон проекта Python, запустите Visual Studio Installer , выберите
Дополнительно > Изменить, выберите рабочую нагрузку Разработка Python , затем выберите
Изменить.
4. Новый проект откроется в обозревателе решений в правой области. Проект пока пуст , так как
он не содержит других файлов.

1. Запустите Visual Studio 2019.


2. На начальном экране выберите Создать новый проект .
3. В диалоговом окне Создать новый проект введите "Python веб" в поле поиска вверху, выберите
Веб- проект в среднем списке и нажмите Далее :

Если вы не видите шаблон проекта Python, запустите Visual Studio Installer , выберите
Дополнительно > Изменить, выберите рабочую нагрузку Разработка Python , затем выберите
Изменить.
4. В следующем диалоговом окне Настроить новый проект введите HelloPython в качестве имени
проекта , укажите расположение и выберите Создать. (Имя решения автоматически
устанавливается в соответствии с именем проекта .)

5. Новый проект откроется в обозревателе решений в правой области. Проект пока пуст , так как
он не содержит других файлов.

Вопрос. В чем преимущество создания проекта в Visual Studio для приложений Python?

Ответ. Приложения Python обычно определяются только с помощью файлов и папок, но такая простая
структура может стать громоздкой, так как приложения увеличиваются в размере и могут содержать
автоматически сгенерированные файлы, JavaScript для веб-приложений и т. д. Проект Visual Studio
помогает управлять этими сложными моментами. Проект (файл .pyproj) определяет все исходные файлы
и файлы содержимого, связанные с проектом, содержит сведения о сборке каждого файла, хранит
информацию для интеграции с системами управления версиями и помогает упорядочить приложение в
виде логических компонентов.

Вопрос. Что представляет собой " решение ", которое отображается в обозревателе
решений?

Ответ. Решение Visual Studio является контейнером, который помогает управлять одним или
несколькими связанными проектами как группой. В решении хранятся общие параметры конфигурации,
которые не предназначены специально для отдельных проектов. В проектах решения также могут
использоваться взаимные ссылки, то есть, когда при запуске одного проекта (приложения Python)
автоматически создается другой (например, расширение C++, используемое в приложении Python).
Установка библиотеки Flask
Веб-приложения на Python почти всегда используют одну из множества доступных библиотек Python для
обработки низкоуровневых процессов, таких как маршрутизация веб-запросов и формирование ответов.
С этой целью Visual Studio предоставляет множество шаблонов для веб-приложений, один из которых вы
будете использовать позднее при выполнении задач этого руководства.

А сейчас выполните следующие инструкции по установке библиотеки Flask в глобальном окружении по


умолчанию, которое используется для этого проекта в Visual Studio.

1. Разверните в проекте узел Окружения Python , чтобы увидеть среду по умолчанию для проекта.

2. Щелкните окружение правой кнопкой мыши и выберите команду Установить пакет Python . Эта
команда открывает вкладку Пакеты в окне Окружения Python .

3. В поле поиска введите flask и выберите результат pip install flask from PyPI . Подтвердите
запросы на права администратора и наблюдайте за ходом выполнения в окне Вывод в Visual
Studio. (Запрос на повышение прав выводится в том случае, если папка пакетов для глобальной
среды находится в защищенной области, такой как C:\Program Files.)

1. Разверните в проекте узел Окружения Python , чтобы увидеть среду по умолчанию для проекта.

2. Щелкните окружение правой кнопкой мыши и выберите команду Управлять пакетами Python...
. Эта команда открывает вкладку Пакеты (PyPI) в окне Окружения Python .
3. В поле поиска введите "flask". Если Flask отображается под полем поиска, этот шаг можно
пропустить. В противном случае выберите Запустить команду: pip install flask . Подтвердите
запросы на права администратора и наблюдайте за ходом выполнения в окне Вывод в Visual
Studio. (Запрос на повышение прав выводится в том случае, если папка пакетов для глобальной
среды находится в защищенной области, такой как C:\Program Files.)

4. После установки библиотека появится в среде в обозревателе решений. Это означает , что ее
можно использовать в коде Python.

NOTE
Вместо установки библиотек в глобальном окружении разработчики обычно создают "виртуальное окружение",
в котором устанавливаются библиотеки для определенного проекта. Шаблоны Visual Studio обычно
обеспечивают такую возможность, как описано в кратком руководстве по созданию проекта Python с помощью
шаблона.
Вопрос. Где можно подробнее узнать о других доступных пакетах Python?

Ответ. Перейдите к странице индекса пакетов Python.

Добавление файла кода


Теперь можно добавить немного кода на Python, чтобы реализовать простейшее веб-приложение.

1. В обозревателе решений щелкните правой кнопкой мыши проект и последовательно выберите


Добавить > Новый элемент .

2. В открывшемся диалоговом окне выберите элемент Пустой файл Python , присвойте файлу имя
app.py и нажмите кнопку Добавить. Файл автоматически откроется в редакторе кода Visual Studio.
3. Скопируйте следующий код и вставьте его в app.py:

from flask import Flask

# Create an instance of the Flask class that is the WSGI application.


# The first argument is the name of the application module or package,
# typically __name__ when using a single module.
app = Flask(__name__)

# Flask route decorators map / and /hello to the hello function.


# To add other resources, create functions that generate the page contents
# and add decorators to define the appropriate resource locators for them.

@app.route('/')
@app.route('/hello')
def hello():
# Render the page
return "Hello Python!"

if __name__ == '__main__':
# Run the app server on localhost:4449
app.run('localhost', 4449)

4. Возможно, вы заметили, что в диалоговом окне Добавить > Новый элемент отображается
много других типов файлов, которые можно добавить в проект Python, включая класс Python, пакет
Python, модульный тест Python, файлы web.config и многое другое. Как правило, эти так
называемые шаблоны элементов прекрасно подходят для быстрого создания файлов при помощи
полезного стандартного кода.

Вопрос. Где можно подробнее узнать о Flask?

Ответ. Ознакомьтесь с документацией по Flask. Начать можно с краткого руководства по Flask.

Запуск приложения
1. В обозревателе решений щелкните правой кнопкой мыши файл app.py и выберите пункт Set as
star tup file (Задать как файл запуска). С помощью этой команды файл кода задается как
запускаемый в Python при запуске приложения.
2. В обозревателе решений щелкните проект правой кнопкой мыши и выберите пункт Свойства .
Затем перейдите на вкладку Отладка и присвойте свойству Номер порта значение 4449 .
Благодаря этому в Visual Studio будет запускаться браузер, используя localhost:4449 , чтобы
обеспечить соответствие аргументам app.run в коде.

3. Выберите команду Отладка > Запуск без отладки (CTRL +F5 ), позволяющую сохранить
изменения в файлах и запустить приложение.
4. Появится командное окно с сообщением Запуск в https://localhost:4449 , а затем в окне браузера
откроется узел localhost:4449 и вы увидите сообщение "Hello, Python!" В командном окне также
отобразится запрос GET с состоянием 200.

Если браузер не открывается автоматически, запустите выбранный вами браузер и перейдите к


localhost:4449 .
Если в командном окне отображается только интерактивная оболочка Python или если это окно
появляется на экране и сразу исчезает , убедитесь в том, что файл app.py был задан в качестве
запускаемого на шаге 1 выше.

5. Перейдите к , чтобы проверить, работает ли декоратор для ресурса /hello . В


localhost:4449/hello
командном окне снова отобразится запрос GET с состоянием 200. Вы можете попробовать и
несколько других URL-адресов. Вы увидите, что в командном окне для них отображается код
состояния 404.

6. Закройте командное окно, чтобы остановить приложение, а затем закройте окно браузера.
Вопрос. В чем разница между командами " Запуск без отладки" и " Начать отладку"?

Ответ. Команда Начать отладку используется, чтобы запустить приложение в контексте отладчика
Visual Studio, что позволяет задавать точки останова, просматривать переменные и осуществлять
построчное выполнение кода. С отладчиком приложения могут работать медленнее, так как для отладки
используются различные обработчики. С помощью команды Запуск без отладки, напротив,
приложение запускается напрямую, как если бы использовалась командная строка. При этом отсутствует
контекст отладки. Браузер запускается автоматически, и выполняется переход к URL-адресу, указанному
на вкладке свойств проекта Отладка .

Следующие шаги
Поздравляем с запуском вашего первого приложения Python из Visual Studio, в процессе которого вы
немного ознакомились с особенностями использования Visual Studio в качестве среды IDE для Python!

Развертывание приложения в Службе приложений Azure

Так как приведенные в этом руководстве инструкции довольно общие, вы, вероятно, догадались, что их
можно и нужно автоматизировать. Такая автоматизация выполняется при помощи шаблонов проектов
Visual Studio. Изучите краткое руководство по созданию проекта Python на основе шаблона, чтобы узнать,
как создается веб-приложение, похожее на созданное вами в рамках этой статьи, но с меньшим
количеством шагов.

Чтобы перейти к более полному учебнику по работе с Python в Visual Studio, включая использование
интерактивного окна, отладку, визуализацию данных и работу с Git, выберите Учебник. Начало работы с
Python в Visual Studio.
Более подробно ознакомиться с возможностями Visual Studio можно по приведенным ниже ссылкам.

Сведения о шаблонах веб-приложений Python в Visual Studio.


Сведения об отладке Python
Общие сведения об интегрированной среде разработки Visual Studio.
Краткое руководство. Создание проекта Python на
основе шаблона в Visual Studio
21.10.2020 • 6 minutes to read • Edit Online

Установив поддержку Python в Visual Studio, можно легко создать проект Python с помощью различных
шаблонов. При помощи этого краткого руководства вы создадите простое приложение Flask на основе
шаблона. Полученный проект похож на созданный вручную при помощи краткого руководства по
созданию веб-приложения с использованием Flask.

1. Запустите Visual Studio.


2. В верхней строке меню последовательно выберите Файл > Создать > Проект , а затем в
диалоговом окне Новый проект выполните поиск по фразе "пустой веб-проект flask", выберите
шаблон Пустой веб- проект Flask в списке по центру, укажите имя проекта и щелкните ОК:

3. В Visual Studio отобразится диалоговое окно с сообщением Для этого проекта требуются
внешние пакеты. Это диалоговое окно появляется, потому что шаблон содержит файл
requirements.txt и в нем указана зависимость от Flask. Visual Studio может выполнять автоматическую
установку пакетов. Вы можете выбрать их установку в виртуальном окружении. Устанавливать
пакеты в виртуальном окружении предпочтительнее, чем в глобальном. Поэтому, чтобы
продолжить, выберите Install into a vir tual environment (Установить в виртуальном окружении).
4. В Visual Studio отобразится диалоговое окно Добавление виртуального окружения. Примите
значение по умолчанию, выберите Создать и согласитесь на все запросы на повышение прав.

TIP
При запуске проекта настоятельно рекомендуем сразу же создать виртуальное окружение, так как оно
требуется для большинства шаблонов Visual Studio. Виртуальные окружения будут точно соответствовать
требованиям вашего проекта в динамике по мере добавления и удаления библиотек. Вы можете без труда
создать файл requirements.txt и использовать его для переустановки зависимостей на другие компьютеры
разработки (как при использовании системы управления версиями), а также при развертывании проекта на
рабочем сервере. Дополнительные сведения о виртуальных окружениях и их преимуществах см. в разделе
Использование виртуальных окружений и статье Управление необходимыми пакетами с помощью
requirements.txt.

5. Когда Visual Studio создаст это окружение, найдите в обозревателе решений файлы app.py и
requirements.txt. Откройте app.py и убедитесь, что шаблон создал такой же код, как в кратком
руководстве по созданию веб-приложения с помощью Flask, с парой дополнительных разделов. Весь
приведенный ниже код создается с помощью шаблона, поэтому в app.py ничего не нужно добавлять
вручную.

Код начинается с необходимых операций импорта:

from flask import Flask


app = Flask(__name__)

Далее — следующая строка, которая может быть полезна при развертывании приложения на веб-
узле:

wsgi_app = app.wsgi_app

Затем следует декоратор маршрута в простой функции, которая определяет представление:

@app.route('/')
def hello():
"""Renders a sample page."""
return "Hello World!"
Наконец, код запуска, который позволяет задать узел и порт с помощью переменных среды без
необходимости в их жестком программировании. Такой код позволяет без труда управлять
конфигурацией на компьютерах разработки и на рабочих компьютерах без изменения кода:

if __name__ == '__main__':
import os
HOST = os.environ.get('SERVER_HOST', 'localhost')
try:
PORT = int(os.environ.get('SERVER_PORT', '5555'))
except ValueError:
PORT = 5555
app.run(HOST, PORT)

6. Чтобы запустить приложение и открыть в браузере страницу localhost:5555 , последовательно


выберите Отладка > Запуск без отладки.

Вопрос. Есть ли другие шаблоны Python в Visual Studio?

Ответ. Для установленной рабочей нагрузки Python Visual Studio предоставляет различные шаблоны
проектов, в том числе шаблоны для веб-платформ Flask, Bottle и Django, облачных служб Azure, различных
сценариев машинного обучения, и даже шаблон для создания проекта на основе существующей структуры
папок, содержащей приложение Python. Вы можете получить к ним доступ через диалоговое окно Файл >
Создать > Проект , выбрав узел языка Python и его дочерние узлы.

Visual Studio также предоставляет широкий набор файлов или шаблонов элементов для быстрого создания
класса Python, пакета Python, модульного теста Python, файлов web.config и многого другого. Открыв
проект Python, вы можете получить доступ к шаблонам элементов при помощи команды меню Проект >
Добавить новый элемент . См. справочник по шаблонам элементов.

Шаблоны помогают сэкономить немало времени при запуске проекта или создании файла, а также
являются хорошим способом изучить разные типы приложений и структуры кода. Рекомендуем уделить
несколько минут созданию проектов и элементов на основе различных шаблонов, чтобы ознакомиться с их
возможностями.

Вопрос. Можно ли также использовать шаблоны Cookiecutter?

Ответ. Да. По сути, Visual Studio предоставляет прямую интеграцию с Cookiecutter, о которой вы можете
узнать в кратком руководстве по созданию проекта из шаблона Cookiecutter.

Следующие шаги
Учебник. Работа с Python в Visual Studio

См. также
Определение существующего интерпретатора Python вручную
Установка поддержки Python в Visual Studio 2015 и более ранних версиях
Расположения установки
Краткое руководство. Открытие и выполнение
кода Python в папке
21.10.2020 • 6 minutes to read • Edit Online

Установив поддержку Python в Visual Studio 2019, вы сможете легко перенести существующий код Python
в Visual Studio 2019 без необходимости создавать проект Visual Studio.

NOTE
В Visual Studio 2017 и более ранних версиях для выполнения кода Python нужно всегда создавать проект Visual
Studio, что можно легко сделать с помощью встроенного шаблона проекта. Подробнее см. в кратком
руководстве по созданию проекта Python на основе существующего кода.

1. В этом пошаговом руководстве описано, как использовать любую папку с кодом Python. Чтобы в
точности повторить все действия из описанного ниже примера, клонируйте репозиторий GitHub
gregmalcolm/python_koans на локальный компьютер, выполнив команду
git clone https://github.com/gregmalcolm/python_koans в соответствующей папке.

2. Запустите Visual Studio 2019 и в начальном окне выберите Открыть в нижней части столбца
Приступить к работе . Если вы уже запустили Visual Studio, просто выберите Файл > Открыть >
Папка .

3. Перейдите к папке с кодом Python и щелкните Выбрать папку. Если вы используете код
python_koans, не забудьте выбрать папку python3 в клонированной папке.
4. Visual Studio отображает папку в обозревателе решений в виде представления папки. Здесь
вы можете разворачивать и сворачивать папки с помощью стрелок в левой части имени папки:

5. Когда вы открываете папку Python, Visual Studio создает несколько скрытых папок для управления
параметрами, связанными с проектом. Чтобы увидеть эти папки (и любые другие скрытые файлы и
папки, например папку .git), нажмите кнопку Показать все файлы на панели инструментов:
6. Чтобы запустить код, определите файл запуска (основной файл программы). В нашем примере
используется файл запуска contemplate-koans.py. Щелкните этот файл правой кнопкой мыши и
выберите пункт Задать как файл запуска .

IMPORTANT
Если выбранный элемент запуска не находится в открытой корневой папке, добавьте в JSON-файл
конфигурации запуска строку , как описано в разделе о настройке рабочего каталога.

7. Запустите код, нажав клавиши CTRL +F5 или выбрав Отладка > Запуск без отладки. Вы также
можете нажать на панели инструментов кнопку, на которой изображен символ воспроизведения.
Эта кнопка запускает код в отладчике Visual Studio. Во всех случаях Visual Studio обнаружит , что
выбранный элемент запуска является файлом Python, и автоматически выполнит код в окружении
Python по умолчанию. (Это окружение отображается справа от элемента запуска на панели
инструментов.)

8. Выходные данные программы отображаются в отдельном командном окне:

9. Чтобы выполнить код в другом окружении, выберите нужное окружение из раскрывающегося


списка на панели инструментов, а затем снова запустите элемент запуска.

10. Чтобы закрыть папку в Visual Studio, выберите в меню команду Файл > Закрыть папку.

Настройка рабочего каталога


По умолчанию Visual Studio выполняет проекты Python, открытые в виде папки, в корне этой самой
папки. Но код вашего проекта может ожидать, что Python выполняется во вложенной папке.
Предположим, что вы открыли корневую папку репозитория python_koans и выбрали в качестве
элемента запуска файл python3/contemplate-koans.py. Если вы теперь выполните код, появится
сообщение о том, что не удается найти файл koans.txt. Эта ошибка связана с тем, что contemplate-koans.py
ожидает выполнение Python в папке python3, а не корневой папке репозитория.

В таком случае следует добавить в JSON-файл конфигурации запуска дополнительную строку, которая
указывает рабочий каталог:

1. Щелкните правой кнопкой мыши файл запуска Python ( .py) в обозревателе решений и
выберите Параметры отладки и запуска .
2. В открывшемся диалоговом окне Запуск отладчика выберите вариант По умолчанию и
щелкните Выбрать.

NOTE
Если вы не видите здесь вариант По умолчанию, убедитесь, что вы выбрали команду Параметры
отлад ки и запуска именно для файла Python с расширением .py. В Visual Studio тип файла определяет
отображаемые варианты действий в отладчике.

3. Visual Studio откроет файл с именем launch.vs.json, расположенный в скрытой папке .vs. Этот файл
описывает контекст отладки для проекта. Чтобы указать рабочую папку, добавьте значение для
параметра "workingDirectory" , как в "workingDirectory": "python3" для примера python-koans:
{
"version": "0.2.1",
"defaults": {},
"configurations": [
{
"type": "python",
"interpreter": "(default)",
"interpreterArguments": "",
"scriptArguments": "",
"env": {},
"nativeDebug": false,
"webBrowserUrl": "",
"project": "python3\\contemplate_koans.py",
"name": "contemplate_koans.py",
"workingDirectory": "python3"
}
]
}

4. Сохраните файл и снова запустите программу. Теперь она выполняется в указанной папке.

Следующие шаги
Учебник. Работа с Python в Visual Studio

См. также
Краткое руководство. Создание проекта Python на основе существующего кода.
Краткое руководство. Создание проекта Python из репозитория.
Определение существующего интерпретатора Python вручную
Краткое руководство. Создание проекта Python на
основе существующего кода
21.10.2020 • 3 minutes to read • Edit Online

Установив поддержку Python в Visual Studio, можно легко перенести существующий код Python в проект
Visual Studio.

IMPORTANT
Описанный здесь процесс не перемещает и не копирует исходные файлы. Если вы хотите работать с копией,
сначала создайте дубликат папки.

1. Запустите Visual Studio и последовательно выберите Файл > Создать > Проект .
2. В диалоговом окне Создание проекта выполните поиск по запросу "Python", выберите шаблон На
основе существующего кода Python , укажите имя и расположение проекта, а затем нажмите
кнопку ОК.

3. В появившемся мастере задайте путь к существующему коду, фильтр для типов файлов и любые
пути поиска, необходимые для проекта, а затем нажмите кнопку Далее . Если вы не знаете пути
поиска, оставьте это поле пустым.

4. В следующем диалоговом окне выберите файл запуска для проекта и нажмите кнопку Далее . (При
необходимости выберите среду; в противном случае оставьте значения по умолчанию.) Обратите
внимание, что в диалоговом окне отображаются только файлы в корневой папке. Если нужный файл
находится во вложенной папке, не указывайте файл запуска и укажите его позже в обозревателе
решений (инструкции см. ниже).
5. Выберите место, где следует сохранить файл проекта (файл .pyproj на диске). При необходимости
можно также включить автоматическое обнаружение виртуальных сред и настроить проект для
разных веб-платформ. Если вы не уверены, оставьте для этих параметров значения по умолчанию.

6. Нажмите кнопку Готово. Visual Studio создаст проект и откроет его в обозревателе решений.
Если вы хотите переместить PYPROJ-файл в другое место, выберите его в обозревателе решений
и щелкните Файл > Сохранить как . Это действие обновляет ссылки на файлы в проекте, но не
перемещает файлы с кодом.

7. Чтобы указать другой файл запуска, найдите его в обозревателе решений, щелкните его правой
кнопкой мыши и выберите пункт Задать как файл запуска .

При необходимости запустите программу, нажав клавиши CTRL +F5 или последовательно выбрав
Отладка > Запуск без отладки.

Дальнейшие действия
Руководство. Работа с Python в Visual Studio

См. также раздел


Определение существующего интерпретатора Python вручную
Установка поддержки Python в Visual Studio 2015 и более ранних версиях
Расположения установки
Краткое руководство. Клонирование репозитория
с кодом Python в Visual Studio
21.10.2020 • 7 minutes to read • Edit Online

Установив поддержку Python в Visual Studio, можно добавить расширение GitHub для Visual Studio. Оно
позволяет легко клонировать репозиторий с кодом Python и создать на его основе проект из среды IDE.
Кроме того, вы в любое время можете клонировать репозитории в командной строке и затем работать с
ними в Visual Studio.

Установите расширение GitHub для Visual Studio


Чтобы работать с репозиториями GitHub из Visual Studio, нужно установить расширение GitHub для Visual
Studio. Для этого запустите установщик Visual Studio, выберите Изменить и откройте вкладку Отдельные
компоненты. Прокрутите содержимое вниз до раздела Средства для работы с кодом, выберите
компонент Расширение GitHub для Visual Studio , а затем выберите Изменить.

Работа с GitHub в Visual Studio


1. Запустите Visual Studio.
2. Последовательно выберите Вид > Team Explorer , чтобы открыть окно Team Explorer , в котором вы
можете подключиться к GitHub или Azure Repos либо клонировать репозиторий. (если показанная на
изображении ниже страница Подключение не отображается, щелкните значок подключения на
верхней панели инструментов и вы перейдете на эту страницу).
3. В разделе Локальные репозитории Git выберите команду Клонировать, в поле URL-адреса
введите https://github.com/gregmalcolm/python_koans , укажите папку для клонируемых файлов и
нажмите кнопку Клонировать.

TIP
В папку , указанную в Team Explorer , будут приниматься клонируемые файлы. В отличие от использования
команды git clone , клонирование в Team Explorer не создает автоматически вложенную папку с именем
репозитория.

4. По завершении клонирования в списке Локальные репозитории Git появится имя репозитория.


Дважды щелкните это имя, чтобы перейти к панели мониторинга репозитория в Team Explorer .

5. В разделе Решения выберите Создать.


6. В появившемся диалоговом окне Создание проекта перейдите к языку Python (или выполните
поиск по слову Python) выберите вариант На основе существующего кода Python , укажите имя
проекта, задайте папку репозитория в поле Расположение и щелкните ОК. В появившемся мастере
выберите Готово.

7. Последовательно выберите элементы меню Вид > Обозреватель решений.


8. В обозревателе решений разверните узел python3 , щелкните правой кнопкой мыши файл
contemplate_koans.py и выберите пункт Set as Star tup File (Задать как файл запуска). Таким
образом вы указываете, какой файл среда Visual Studio должна использовать при запуске проекта.

9. Выберите пункт меню Проект > Свойства Koans , откройте вкладку Общие и задайте каталог
python3 в качестве рабочей папки. Этот шаг является обязательным, так как по умолчанию в Visual
Studio в качестве рабочей папки используется корневой каталог проекта, а не папка с файлом
запуска (python3\contemplate_koans.py, который вы видите в свойствах проекта). Код программы
ищет файл koans.txt в рабочем каталоге, поэтому если не изменить это значение, во время
выполнения произойдет ошибка.
10. Чтобы запустить программу, нажмите клавиши CTRL +F5 или последовательно выберите Отладка
> Запустить без отладки. Если происходит ошибка FileNotFoundError для файла koans.txt,
проверьте рабочую папку, как описано на предыдущем шаге.

11. Если программа выполняется успешно, в строке 17 файла python3/koans/about_asserts.py должна


создаваться ошибка утверждения. Это сделано намеренно: в программу умышленно внесены ошибки,
чтобы вы учились работе с Python, исправляя их. (Дополнительные сведения можно найти на сайте
проекта Ruby Koans, который послужил источником вдохновения для Python Koans.)

12. Откройте файл python3/koans/about_asserts.py, перейдя к нему в обозревателе решений и


дважды щелкнув его. Обратите внимание на то, что по умолчанию в редакторе номера строк не
показаны. Чтобы изменить это поведение, выберите пункт меню Сервис > Параметры, в нижней
части диалогового окна щелкните Показать все параметры, а затем перейдите к узлу
Текстовый редактор > Python > Общие и установите флажок Номера строк .

13. Исправьте ошибку, изменив аргумент False в строке 17 на True . Строка должна выглядеть
следующим образом:

self.assertTrue(True) # This should be True


14. Запустите программу еще раз. Если в Visual Studio появятся предупреждения об ошибках, выберите
ответ Да , чтобы продолжить выполнение кода. После этого начнется первая проверка и программа
должна остановиться на следующей ошибке. При необходимости продолжайте исправлять ошибки и
повторно запускать программу.

IMPORTANT
С помощью этого краткого руководства вы создали прямой клон репозитория python_koans в GitHub. Такой
репозиторий защищен автором от непосредственного изменения, поэтому попытка зафиксировать в нем
изменения завершится неудачей. На практике разработчики вместо этого создают вилку такого репозитория в
собственной учетной записи GitHub, вносят в нее изменения, а затем создают запросы на вытягивание для
отправки изменений в исходный репозиторий. При наличии собственной вилки укажите ее URL-адрес вместо URL-
адреса исходного репозитория, который использовался ранее.

Следующие шаги
Учебник. Работа с Python в Visual Studio

См. также
Определение существующего интерпретатора Python вручную
Как установить поддержку Python в Visual Studio под управлением Windows
Расположения установки
Краткое руководство. Создание проекта из
шаблона Cookiecutter
21.10.2020 • 2 minutes to read • Edit Online

После установки поддержки Python в Visual Studio можно легко создать проект на основе шаблона
Cookiecutter, включая множество шаблонов, опубликованных в GitHub. Cookiecutter предоставляет
графический пользовательский интерфейс для поиска шаблонов, ввода их параметров и создания проектов
и файлов. В Visual Studio 2017 и более поздних версий этот компонент уже встроен. В более ранних
версиях Visual Studio его нужно устанавливать отдельно.

1. Для этого краткого руководства сначала установите дистрибутив Python Anaconda3, который
включает в себя необходимые пакеты Python для приведенного здесь шаблона Cookiecutter.
Запустите установщик Visual Studio, выберите Изменить, разверните параметры разработки
Python в правой части экрана и выберите Anaconda3 (32- или 64-разрядную версию). Имейте в
виду, что установка может занять некоторое время в зависимости от скорости Интернета, но это
самый простой способ установить необходимые пакеты.

2. Запустите Visual Studio.


3. Выберите Файл > Создать > Из Cookiecutter . При выборе этой команды в Visual Studio
открывается окно с шаблонами.

4. Выберите шаблон Microsoft/python-sklearn-classifier-cookiecutter и щелкните Далее . (Этот


процесс может занять несколько минут при первом использовании конкретного шаблона, так как
Visual Studio устанавливает необходимые пакеты Python.)
5. В следующим шаге укажите расположение для нового проекта в поле Создать в и нажмите
Создать и открыть проект .

6. По завершении процесса появится сообщение Файлы успешно созданы с помощью шаблона...


. Проект автоматически открывается в обозревателе решений.
7. Чтобы запустить программу, нажмите клавиши CTRL +F5 или последовательно выберите Отладка >
Запустить без отладки.

Следующие шаги
Учебник. Работа с Python в Visual Studio

См. также
Использование расширения Cookiecutter
Определение существующего интерпретатора Python вручную
Установка поддержки Python в Visual Studio 2015 и более ранних версиях
Расположения установки
Установка поддержки Python в Visual Studio
21.10.2020 • 2 minutes to read • Edit Online

NOTE
Сейчас Python поддерживается только в Visual Studio для Windows. В Mac и Linux его поддержка реализуется
посредством Visual Studio Code.

1. Скачайте и запустите последнюю версию Visual Studio Installer для Windows (поддержка Python
имеется в выпуске 15.2 и более поздних). Если вы уже установили Visual Studio, запустите установщик
Visual Studio и перейдите к шагу 2.
Установка Visual Studio Community

TIP
Выпуск Community предназначен для индивидуальных разработчиков, использования при аудиторном
обучении и в научных исследованиях , а также разработки решений с открытым кодом. Если программу
планируется использовать в других целях , установите Visual Studio Professional или Visual Studio Enterprise.

2. В установщике предлагается список рабочих нагрузок, то есть групп связанных параметров для
определенных целей разработки. Для Python выберите рабочую нагрузку Разработка на Python и
нажмите Установить.

3. Чтобы быстро протестировать поддержку Python, запустите Visual Studio, нажмите клавиши ALT +I ,
чтобы открыть интерактивное окно Python , и введите 2+2 . Если вы не увидите результат 4 ,
проверьте выполненные действия.

Следующий шаг
Шаг 1. Создание проекта Python

См. также раздел


Определение существующего интерпретатора Python вручную
Установка поддержки Python в Visual Studio 2015 и более ранних версиях
Расположения установки
Руководство. Работа с Python в Visual Studio
21.10.2020 • 7 minutes to read • Edit Online

Python — это популярный язык программирования, который отличается надежностью, гибкостью и


простотой освоения. Его можно бесплатно использовать на любых операционных системах, и он
поддерживается широким сообществом разработчиков. Кроме того, для него доступно множество
бесплатных библиотек. Python поддерживает все способы разработки, включая веб-приложения, веб-
службы, классические приложения, скрипты и научные вычисления. Его используют многие
университеты, ученые, профессиональные и непрофессиональные разработчики.

Visual Studio обеспечивает первоклассную поддержку языка Python. В этом учебнике рассматриваются
перечисленные ниже действия.

Шаг 0. Установка
Шаг 1. Создание проекта Python (эта статья).
Шаг 2. Написание и выполнение кода для ознакомления с функцией IntelliSense в Visual Studio на
практике.
Шаг 3. Создание дополнительного кода в интерактивном окне REPL.
Шаг 4. Выполнение готовой программы в отладчике Visual Studio
Шаг 5. Установка пакетов и управление средами Python.
Шаг 6. Работа с Git.

предварительные требования
Visual Studio 2017 с установленной рабочей нагрузкой Python. См. дополнительные сведения об
использовании Python в Visual Studio.

Visual Studio 2019 с установленной рабочей нагрузкой Python. См. дополнительные сведения об
использовании Python в Visual Studio.

Вы также можете использовать более раннюю версию Visual Studio с установленным подключаемым
модулем Инструменты Python для Visual Studio. См. руководство по установке поддержки Python в Visual
Studio.

Шаг 1. Создание проекта Python


С помощью проекта в Visual Studio производится управление всеми файлами, составляющими
приложение, включая исходный код, ресурсы, конфигурации и другие данные. Проект формализует и
обеспечивает взаимосвязь между всеми файлами проекта, а также между ними и внешними ресурсами,
которые используются несколькими проектами. Таким образом, благодаря проектам расширять и
развивать приложение становится гораздо проще, чем когда вы контролируете взаимосвязи в
произвольных папках, скриптах, текстовых файлах или даже у себя в голове.

В этом учебнике вы начнете работу с простого проекта, содержащего один пустой файл кода.

1. В Visual Studio выберите Файл > Создать > Проект (CTRL +SHIFT +N ), после чего откроется
диалоговое окно Создание проекта . В нем можно просмотреть шаблоны для разных языков,
после чего выбрать один из них для вашего проекта и указать, куда среда Visual Studio должна
поместить файлы.

2. Чтобы просмотреть шаблоны Python, выберите Установленные > Python в области слева или
выполните поиск по слову "Python". Поиск — это отличный способ найти шаблон, если вы не
помните, где он находится в дереве языков.

Обратите внимание на то, что поддержка Python в Visual Studio включает в себя ряд шаблонов
проектов, включая веб-приложения на платформах Bottle, Flask и Django. Однако для целей
данного пошагового руководства мы начнем с пустого проекта.

3. Выберите шаблон Приложение Python , укажите имя проекта и нажмите кнопку ОК.
4. Через несколько секунд в окне обозревателя решений Visual Studio (1) будет показана
структура проекта. Файл кода по умолчанию откроется в редакторе (2). Кроме того, откроется
окно Свойства (3), в котором приводятся дополнительные сведения для элемента, выбранного в
обозревателе решений, включая его точное расположение на диске.

5. Потратьте несколько минут на знакомство с обозревателем решений, который служит для


просмотра файлов и папок проекта.
(1) Полужирным шрифтом выделен ваш проект , имя которого вы указали в окне Создание
проекта . На диске этот проект представлен файлом .pyproj в папке проекта.

(2) На верхнем уровне находится решение, имя которого по умолчанию совпадает с именем
проекта. Решение, представленное на диске файлом SLN, является контейнером для одного или
нескольких связанных проектов. Например, если вы создаете расширение C++ для приложения
Python, этот проект C++ может входить в то же решение. Решение также может включать в себя
проект веб-службы и проекты специальных тестовых программ.

(3) В проекте можно увидеть файлы исходного кода. В нашем примере это один файл .py. При
выборе файла его свойства приводятся в окне Свойства . Если дважды щелкнуть файл, он
откроется в соответствующем средстве.

(4) Кроме того, в проекте есть узел Окружения Python . Если развернуть его, можно увидеть
доступные интерпретаторы Python. Развернув узел интерпретатора, вы увидите библиотеки,
установленные в этой среде (5).

Щелкните правой кнопкой мыши любой узел или элемент в обозревателе решений, чтобы
открыть меню с применимыми командами. Например, с помощью команды Переименовать
можно изменить имя любого узла или элемента, включая проект и решение.

Следующий шаг
Написание и запуск кода

Дополнительные подробности
Проекты Python в Visual Studio
Сведения о языке Python на сайте python.org
Python для начинающих (python.org)
Шаг 2. Написание и запуск кода
21.10.2020 • 5 minutes to read • Edit Online

Предыдущий шаг: создание проекта Python

Хотя управление файлами проекта осуществляется в обозревателе решений, с содержимым файлов,


например файлов исходного кода, вы обычно работаете в окне редактора. Редактор определяет тип
редактируемого файла, включая язык программирования (на основе расширения файла), и обеспечивает
характерные для этого языка возможности, например раскраску синтаксических конструкций и
автоматическое завершение с помощью IntelliSense.

1. После создания проекта Python Application в редакторе Visual Studio откроется пустой файл по
умолчанию с именем PythonApplication1.py.

2. В редакторе начните вводить print("Hello, Visual Studio") . По мере ввода функция IntelliSense в
Visual Studio покажет варианты автозавершения. Выделенный параметр в раскрывающемся списке —
это вариант завершения по умолчанию, который применяется при нажатии клавиши TAB .
Завершения очень удобны при использовании длинных инструкций или идентификаторов.

3. Функция IntelliSense отображает различные сведения в зависимости от используемой инструкции,


вызываемой функции и т. д. Если в функции print ввести ( после print для указания вызова
функции, будет показана полная информация об использовании этой функции. Во всплывающем
окне IntelliSense также полужирным шрифтом выделяется текущий аргумент (в этом случае это
value ):

4. Завершите инструкцию следующим образом:

print("Hello, Visual Studio")

5. Обратите внимание на раскраску синтаксических конструкций, которая позволяет отличить


оператор print от аргумента "Hello Visual Studio" . Кроме того, на время удалите последний
символ " в строке и обратите внимание на то, как код, содержащий синтаксические ошибки,
подчеркивается в Visual Studio красной линией. Чтобы исправить ошибку, снова добавьте символ " .

TIP
Visual Studio предоставляет полный контроль над внешним видом и поведением среды разработки, что
позволяет настроить ее, как вам нравится. Выберите пункт меню Сервис > Параметры и изучите
параметры на вкладках Сред а и Текстовый ред актор. По умолчанию вы видите ограниченный набор
параметров. Чтобы просмотреть все параметры для каждого языка программирования, щелкните
Показать все параметры внизу диалогового окна.

6. Чтобы выполнить весь написанный код, нажмите клавиши CTRL +F5 или выберите команду меню
Отладка > Запуск без отладки. Если в коде все еще есть ошибки, в Visual Studio будут выведены
предупреждения.

7. При запуске программы появляется окно консоли с результатами, так же как при запуске
интерпретатора Python с файлом PythonApplication1.py из командной строки. Чтобы закрыть это
окно и вернуться в редактор Visual Studio, нажмите любую клавишу.

8. Помимо инструкций и функций, IntelliSense выводит варианты для завершения операторов Python
import и from . Эти варианты позволяют легко узнать, какие модули доступны в вашей среде и какие
члены доступны в определенном модуле. В редакторе удалите строку print и начните вводить
import . Список модулей появляется после ввода пробела:

9. Завершите строку, введя или выбрав sys .


10. В следующей строке введите from , чтобы снова вывести список модулей:
11. Выберите или введите math , а затем пробел и import , чтобы отобразился список элементов модуля:

12. Затем импортируйте элементы sin , cos и radians . Обратите внимание, как для каждого из них
будут выводиться варианты автозавершения. По завершении код должен выглядеть следующим
образом:

import sys
from math import cos, radians

TIP
Принцип функции завершения заключается в следующем — по мере ввода появляются подстроки со
словами, в которых совпадают части или буквы в начале слова, и даже отображаются пропущенные
символы. Дополнительные сведения см. в руководстве по редактированию кода.

13. Добавьте еще код для печати значений косинуса в интервале до 360 градусов.

for i in range(360):
print(cos(radians(i)))

14. Снова запустите программу, нажав клавиши CTRL +F5 или выбрав пункт меню Отладка > Запуск
без отладки. По завершении закройте окно вывода.

Следующий шаг
Использование интерактивного окна REPL

Дополнительные подробности
Изменить код
Форматирование кода
Рефакторинг кода
Использование PyLint
Шаг 3. Использование интерактивного окна REPL
21.10.2020 • 8 minutes to read • Edit Online

Предыдущий шаг. Написание и запуск кода

Интерактивное окно Visual Studio для Python предоставляет цикл REPL (read–eval–print loop), который
значительно сокращает обычный цикл "редактирование — сборка — отладка". Интерактивное окно
предоставляет все возможности REPL, доступные в командной строке Python. Оно также очень упрощает
обмен кодом с помощью исходных файлов в редакторе Visual Studio. Выполнение этой задачи с помощью
командной строки представляет сложность.

NOTE
Для решения проблем с REPL обязательно установите пакеты ipython и ipykernel . Сведения об установке
пакетов см. в статье Справочная информация по вкладкам окна "Окружения Python".

1. Чтобы открыть интерактивное окно, в обозревателе решений щелкните правой кнопкой


мыши среду Python проекта (например, Python 3.6 (32- разрядная версия) , как на рисунке выше)
и выберите пункт Открыть интерактивное окно. Также можно выбрать Вид > Другие окна >
Интерактивные окна Python в главном меню Visual Studio.

2. Интерактивное окно открывается под окном редактора со стандартной командной строкой REPL
Python >>> . С помощью раскрывающегося списка Окружения можно выбрать определенный
интерпретатор для работы. Кроме того, часто требуется увеличить интерактивное окно. Для
этого можно перетащить разделитель между двумя окнами:
TIP
Размеры любых окон в Visual Studio можно изменять, перетаскивая граничные разделители. Вы также
можете перетаскивать окна за пределы окна Visual Studio и изменять их расположение внутри этого окна,
как вам нравится. Подробные сведения см. в статье Настройка макетов окон.

3. Введите несколько операторов, например print("Hello, Visual Studio") , и выражений, например


123/456 , чтобы сразу увидеть результаты:

4. Когда вы начнете вводить многострочный оператор, например определение функции, в


интерактивном окне будет отображаться приглашение ... для продолжения строк, которое, в
отличие от командной строки REPL, поддерживает автоматический отступ:

5. Все элементы, вводимые в интерактивном окне, записываются в журнал. В нем также, в отличие
от командной строки REPL, сохраняются многострочные элементы. Например, вместо того чтобы
повторно создавать функцию по одной строке, можно просто восстановить все определение
функции f как единое целое и изменить имя на make_double .

6. Visual Studio может передавать несколько строк кода из окна редактора в интерактивное окно.
Эта возможность позволяет хранить код в исходном файле и легко передавать отдельные его части
в интерактивное окно. После этого с такими фрагментами кода можно работать в удобной среде
REPL вместо того, чтобы выполнять всю программу. Чтобы увидеть, как работает эта функция,
замените цикл for в файле PythonApplication1.py следующим кодом:

# 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'

7. Выберите операторы функций import , from и make_dot_string в файле .py. Щелкните правой
кнопкой мыши выделенный текст и выберите Отправить код в интерактивное окно (или
нажмите клавиши Ctrl +ВВОД). Фрагмент кода будет немедленно вставлен в интерактивное окно,
после чего начнется его выполнение. Так как код определил функцию, можно быстро проверить эту
функцию, вызвав ее несколько раз:

TIP
Если в редакторе не выделен фрагмент , при нажатии клавиш CTRL +ВВОД в интерактивном окне
выполнится текущая строка кода, а курсор автоматически установится в следующей строке. Это
позволяет легко выполнять код в пошаговом режиме, многократно нажимая клавиши CTRL +ВВОД, что
невозможно при использовании командной строки Python. Таким образом также возможно пошаговое
выполнение кода без запуска отладчика, в том числе не с самого начала программы.

8. Кроме того, можно скопировать и вставить несколько строк кода, например приведенный ниже
фрагмент , в интерактивное окно из любого источника, что трудно сделать с помощью командной
строки REPL для Python. При вставке интерактивное окно запускает этот код так же, как при
вводе с клавиатуры.

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

9. Как можно видеть, код работает нормально, но выходные данные не очень впечатляют. Другое
значение шага в цикле for сделает косинусоиду более наглядной. К счастью, так как весь цикл for
хранится в журнале REPL как единое целое, можно легко вернуться и внести изменения, а затем еще
раз проверить функцию. Сначала восстановите цикл for , нажав клавишу со стрелкой вверх. Затем
нажмите клавишу со стрелкой влево или вправо, чтобы начать переход по коду (пока вы не
сделаете это, при нажатии клавиш со стрелками вверх и вниз будет происходить переход по
журналу). Перейдите к спецификации range и измените ее на range(0, 360, 12) . Затем нажмите
клавиши CTRL +ВВОД (в любом месте кода), чтобы снова выполнить весь оператор:

10. Повторяйте эту процедуру, пробуя различные значения шага, пока не найдете оптимальное. Можно
также сделать так, чтобы волна повторялась, увеличив диапазон, например range(0, 1800, 12) .

11. Если вас устраивает код в интерактивном окне , выберите его. Затем щелкните код правой
кнопкой мыши и выберите Скопировать код (Ctrl +Shift +C ). Наконец, вставьте выбранный код в
редактор. Обратите внимание на то, что при использовании этой возможности в Visual Studio
автоматически пропускаются выходные данные, а также символы >>> и ... . Например, на
приведенном ниже рисунке показано использование команды Копировать код применительно к
выделенному фрагменту, включающему приглашения и выходные данные:

При вставке в редакторе остается только код:

for i in range(0, 1800, 12):


s = make_dot_string(i)
print(s)

Чтобы скопировать содержимое интерактивного окна полностью, включая приглашения и


выходные данные, используйте стандартную команду Копировать.

12. Итак, вы обработали небольшую часть кода с помощью среды REPL в интерактивном окне, а затем
легко добавили этот код в исходный файл проекта. Если снова выполнить этот код с помощью
клавиш CTRL +F5 (или команды Отладка > Начать без отладки), отобразятся требуемые
результаты.

Следующий шаг
Выполнение кода в отладчике

Дополнительные подробности
Работа с интерактивным окном Python
Использование IPython REPL
Шаг 4. Выполнение кода в отладчике
21.10.2020 • 12 minutes to read • Edit Online

Предыдущий шаг. Использование интерактивного окна REPL

Помимо возможности управления проектами, расширенных возможностей редактирования и


интерактивного окна, Visual Studio предоставляет полнофункциональную поддержку отладки для кода
Python. В отладчике можно выполнять код пошагово, включая каждую итерацию цикла. Кроме того, можно
приостанавливать программу, если выполняются определенные условия. При приостановке программы в
отладчике можно полностью изучить ее состояние и изменить значения переменных. Эти действия
необходимы для выявления источников ошибок в программе. Кроме того, они позволяют тщательно
отслеживать поток работы программы.

1. Замените код в файле PythonApplication1.py приведенным ниже кодом. Этот вариант кода расширяет
make_dot_string , что позволяет изучать отдельные шаги в отладчике. Он также помещает цикл for
в функцию main и выполняет его явным образом, вызывая эту функцию.

from math import cos, radians

# Create a string with spaces proportional to a cosine of x in degrees


def make_dot_string(x):
rad = radians(x) # cos works with radians
numspaces = int(20 * cos(radians(x)) + 20) # scale to 0-40 spaces
st = ' ' * numspaces + 'o' # place 'o' after the spaces
return st

def main():
for i in range(0, 1800, 12):
s = make_dot_string(i)
print(s)

main()

2. Убедитесь, что код работает правильно, нажав клавишу F5 или выбрав команду меню Отладка >
Начать отладку. Это запускает выполнение кода в отладчике, но так как вы еще не настроили
приостановку программы во время выполнения, выводится только шаблон волны для нескольких
итераций. Нажмите любую клавишу, чтобы закрыть окно вывода.
TIP
Чтобы закрыть окно вывода автоматически после завершения программы, выберите команду меню Сервис
> Параметры, разверните узел Python , выберите Отлад ка и снимите флажок Ожид ать вход ные
д анные при нормальном завершении работы процесса:

3. Установите точку останова в операторе , щелкнув один раз серое поле возле этой строки или
for
поместив курсор в этой строке и выбрав команду Отладка > Точка останова (клавиша F9 ). В
сером поле появляется красная точка для указания точки останова (как показано ниже стрелкой):

4. Снова запустите отладчик (F5 ), и вы увидите, что выполнение кода остановится в строке с этой
точкой останова. Здесь можно просмотреть стек вызовов и переменные. Переменные, относящиеся к
области действия, приводятся в окне Видимые , если они определены. В нижней части этого окна
можно также перейти к представлению Локальные .В нем отображаются все переменные, которые
найдены средой Visual Studio в текущей области действия (включая функции), даже если они еще не
определены.
5. Обратите внимание на панель инструментов отладки (показана ниже) в верхней части окна Visual
Studio. Эта панель инструментов предоставляет быстрый доступ к наиболее часто используемым
командам отладки (которые также находятся в меню Отладка ).

Кнопки располагаются слева направо в следующем порядке:

Продолжить (F5 ) — программа выполняется до следующей точки останова или до конца.


Прервать все (CTRL +ALT +BREAK ) — приостанавливает программу, которая выполняется
длительное время.
Остановить отладку (SHIFT +F5 ) — программа останавливается в текущем месте, и работа
отладчика завершается.
Перезапустить (CTRL +SHIFT +F5 ) — программа останавливается в текущем месте и
перезапускается в отладчике с начала.
Показать следующий оператор (ALT +NUM * ) — переход к строке кода, которая должна
быть выполнена следующей. Эта команда наиболее полезна в случае, если вы просматриваете
код во время сеанса отладки и хотите быстро перейти к месту, где работа отладчика была
приостановлена.
Шаг с заходом (F11 ) — выполняет следующую строку кода с заходом в вызываемые функции.
Шаг с обходом (F10 ) — выполняет следующую строку кода без захода в вызываемые функции.
Шаг с выходом (Shift +F11 ) — текущая функция выполняется до конца, после чего выполнение
приостанавливается в вызывающем коде.
6. Выполните применительно к оператору for шаг с обходом с помощью команды Шаг с обходом.
Пошаговое выполнение означает , что отладчик выполняет текущую строку кода, включая все
вызовы функций, после чего сразу приостанавливает выполнение программы. Обратите внимание на
то, как переменная i теперь определена в окнах Локальные и Видимые .

7. Выполните шаг с обходом в следующей строке, в которой вызывается функция make_dot_string . Шаг
с обходом здесь нужен для того, чтобы отладчик выполнил всю функцию make_dot_string и
приостановил работу, когда она завершится. Внутри функции работа отладчика не останавливается,
если в ней нет отдельной точки останова.

8. Выполните еще несколько шагов с обходом, наблюдая за тем, как меняются значения переменных в
окнах Локальные и Видимые .

9. В окне Локальные или Видимые в столбце Значение дважды щелкните поле переменной i или
s , чтобы изменить ее значение. Чтобы применить изменение, нажмите клавишу ВВОД или
щелкните в любой области за пределами поля со значением.

10. Продолжите пошаговое выполнение кода с помощью команды Шаг с заходом. Шаг с заходом
означает , что отладчик заходит во все вызываемые функции, о которых у него есть отладочные
сведения, например make_dot_string . Внутри функции make_dot_string вы можете изучать ее
локальные переменные и пошагово выполнять ее код.

11. Продолжайте пошагово выполнять код с помощью команды Шаг с заходом и обратите внимание
на то, что после достижения конца функции make_dot_string вы возвращаетесь в цикл for , а
переменная s принимает новое значение. Когда вы снова перейдете к оператору print , обратите
внимание на то, что выполнение шага с заходом для print не приводит к заходу в эту функцию.
Связано это с тем, что функция print не написана на языке Python, а представляет собой машинный
код внутри среды выполнения Python.

12. Продолжайте выполнять шаги с заходом, пока вы снова не попадете в функцию make_dot_string .
Теперь используйте команду Шаг с выходом и обратите внимание на то, что вы вернетесь в цикл
for. Команда Шаг с выходом означает , что отладчик выполняет функцию до конца, а затем
автоматически приостанавливает выполнение в вызывающем коде. Это полезно в случае, если вы
пошагово выполняете определенную часть большой функции, но остальную ее часть вам
отлаживать не нужно и вы не хотите устанавливать отдельную точку останова в вызывающем коде.

13. Чтобы продолжить выполнение программы после достижения очередной точки останова,
используйте команду Продолжить (F5 ). Так как вы установили точку останова в цикле for , при
следующей итерации произойдет остановка.

14. Пошаговое выполнение сотен итераций цикла может быть утомительным, поэтому в Visual Studio к
точке останова можно добавить условие. В этом случае отладчик будет приостанавливать
выполнение программы в точке останова, только если условие соблюдается. Например, можно
настроить условие для точки останова в операторе for так, чтобы выполнение в ней прерывалось,
только если значение переменной i превышает 1600. Чтобы задать это условие, щелкните правой
кнопкой мыши красную точку, обозначающую точку останова, и выберите пункт Условия
(сочетание клавиш Alt +F9 > C ). В появившемся всплывающем окне Параметры точки останова
введите i > 1600 в качестве выражения и выберите Закрыть. Нажмите клавишу F5 , чтобы
продолжить работу, и обратите внимание на то, что до того, как произойдет следующий останов,
будет выполнено несколько итераций.

15. Чтобы программа выполнялась до конца, отключите точку останова, щелкнув в поле точку правой
кнопкой мыши и выбрав команду Выключить точку останова (CTRL +F9 ). Затем выберите
команду Продолжить (или нажмите клавишу F5 ), чтобы запустить программу. Когда выполнение
программы завершится, сеанс отладки в Visual Studio будет закрыт и вы вернетесь в режим
редактирования. Обратите внимание, что точку останова можно также удалить, выбрав ее точку или
щелкнув точку правой кнопкой мыши и выбрав пункт Удалить точку останова , но при этом также
будут удалены все заданные условия.

TIP
В некоторых ситуациях , например, когда не удается запустить интерпретатор Python, окно выходных данных
может автоматически закрываться сразу после появления, из-за чего увидеть сообщения об ошибках невозможно.
Если такое происходит , в обозревателе решений щелкните проект правой кнопкой мыши, выберите пункт
Свойства, откройте вкладку Отлад ка и добавьте -i в поле Аргументы интерпретатора. Этот аргумент
вынуждает интерпретатор перейти в интерактивный режим после завершения программы, оставив окно
открытым, пока вы не нажмете клавиши CTRL +Z > ВВОД для выхода.

Дальнейшие действия
Установка пакетов в окружении Python

Дополнительные подробности
Отладка
Полную документацию по возможностям отладки Visual Studio можно найти в статье Отладка в Visual
Studio.
Шаг 5. Установка пакетов в окружении Python
21.10.2020 • 5 minutes to read • Edit Online

Предыдущий шаг. Выполнение кода в отладчике

Сообщество разработчиков на Python создало тысячи полезных пакетов, которые вы можете включать в
свои проекты. В Visual Studio имеется пользовательский интерфейс для управления пакетами в средах
Python.

Просмотр окружений
1. Выберите команду меню Просмотр > Другие окна > Окружения Python . Откроется окно
Окружения Python (как узел обозревателя решений), в котором представлены разные среды,
доступные вам. Список содержит как среды, установленные с помощью установщика Visual Studio,
так и среды, которые вы установили отдельно. В их число входят глобальные, виртуальные среды и
среды Conda. Среда, выделенная полужирным шрифтом, — это среда, используемая по умолчанию
для новых проектов. Дополнительные сведения о работе со средами см. в разделе Создание
окружений Python и управление ими в средах Visual Studio.

NOTE
Можно также открыть окно "Окружения Python", выбрав окно Обозревателя решений и нажав сочетание
клавиш CTRL+K, CTRL+` . Если сочетание клавиш не работает и окно "Окружения Python" отсутствует в
меню, возможно, не установлена рабочая нагрузка Python. Инструкции по установке Python см. в статье
Установка поддержки Python в Visual Studio.

2. На вкладке Обзор среды можно быстро получить доступ к интерактивному окну этой среды, а
также к ее папке установки и интерпретаторам. Например, щелкните ссылку Открыть
интерактивное окно, и в Visual Studio откроется интерактивное окно для этой среды.

3. Теперь создайте проект , выбрав пункт меню Файл > Создать > Проект , а затем выбрав шаблон
Приложение Python . В появившийся файл кода вставьте приведенный ниже код, который строит
косинусоиду, как в предыдущих шагах учебника, но теперь в виде графика. Кроме того, можно
использовать ранее созданный проект и заменить код.

from math import radians


import numpy as np # installed with matplotlib
import matplotlib.pyplot as plt

def main():
x = np.arange(0, radians(1800), radians(12))
plt.plot(x, np.cos(x), 'b')
plt.show()

main()

4. В открытом проекте Python можно открыть окно "Окружения Python" из Обозревателя решений,
щелкнув правой кнопкой мыши Окружения Python и выбрав Просмотреть все окружения
Python .

5. Если в окне редактора вы наведете указатель мыши на операторы импорта numpy и matplotlib , вы
заметите, что они не разрешены. Это связано с тем, что пакеты не были установлены в глобальную
среду по умолчанию.
Установка пакетов с помощью окна "Окружения Python"
1. В окне "Окружения Python" выберите среду по умолчанию для новых проектов Python и перейдите
на вкладку Пакеты. На ней вы увидите список пакетов, установленных в настоящее время в среде.
2. Установите пакет matplotlib , введя его имя в поле поиска, а затем выбрав параметр Выполнить
команду "pip install matplotlib" . Будет установлен пакет matplotlib , а также все пакеты, от
которых он зависит (в данном случае — numpy ).
3. Согласитесь на повышение прав, если появится соответствующий запрос.
4. Установленный пакет появится в окне Окружения Python . Если щелкнуть знак X справа от пакета,
он будет удален.
NOTE
Под названием среды может появиться небольшой индикатор выполнения, который указывает на то, что
Visual Studio создает базу данных IntelliSense для нового пакета. На вкладке IntelliSense также приводятся
более подробные сведения. Имейте в виду , что, пока база данных не будет готова, функции IntelliSense,
такие как автозавершение и проверка синтаксиса, будут неактивны для этого пакета в редакторе.

В Visual Studio 2017 версии 15.6 и более поздних версий используются другие (более быстрые) методы для
работы с IntelliSense. На вкладке IntelliSense отображается соответствующее сообщение.

Запуск программы
1. После установки matplotlib запустите программу с отладчиком (F5 ) или без него (CTRL +F5 ), чтобы
увидеть результат.
Дальнейшие действия
Работа с Git

Дополнительные подробности
Среды Python
Сведения о Django в Visual Studio
Сведения о Flask в Visual Studio
Шаг 6. Работа с Git
21.10.2020 • 4 minutes to read • Edit Online

Предыдущий шаг. Установка пакетов и управление средами Python

Visual Studio обеспечивает прямую интеграцию с локальными репозиториями Git, а также удаленными
репозиториями, находящимися в таких службах, как GitHub и Azure Repos. Эта интеграция включает в себя
клонирование репозитория, фиксацию изменений и управление ветвями.

В этой статье представлены общие сведения о создании локального репозитория Git для существующего
проекта и некоторых возможностях Visual Studio, связанных с Git.

1. Открыв проект в Visual Studio, например проект из предыдущего шага, щелкните решение правой
кнопкой мыши и выберите Добавить решение в систему управления версиями. В Visual Studio
создается локальный репозиторий Git, содержащий код вашего проекта.

2. Если Visual Studio определяет , что управление проектом осуществляется в репозитории Git, в нижнем
правом углу окна Visual Studio появляются связанные с Git элементы управления. Эти элементы
управления показывают ожидающие фиксации, изменения, имя репозитория и ветвь. Наведите
указатель на эти элементы управления для просмотра дополнительных сведений.

3. Когда вы создаете репозиторий или выбираете любой элемент управления Git, в Visual Studio
открывается окно Team Explorer (это окно можно открыть в любое время с помощью команды меню
Вид > Team Explorer ). В окне представлены три основные области. Вы можете переключаться
между ними с помощью раскрывающегося списка в заголовке Team Explorer . Кроме того, если
выбрать элемент управления Отправить (значок со стрелкой вверх), отображается область
Синхронизация, которая предоставляет операции для публикации:

4. Выберите Изменения (или элемент управления Git со значком карандаша), чтобы просмотреть
незафиксированные изменения и при необходимости зафиксировать их.
Дважды щелкните файл в списке Изменения, чтобы открыть представление различий для этого
файла:

5. Выберите Ветви (или элемент управления Git с именем ветви), чтобы изучить ветви и выполнять
операции объединения и перемещения изменений из одной ветви в другую:

6. При выборе элемента управления Git с именем репозитория (CosineWave на предыдущем рисунке) в
Team Explorer отображается интерфейс подключения, с помощью которого можно быстро
перейти в другой репозиторий.

7. При использовании локального репозитория зафиксированные изменения помещаются сразу в него.


Если установлено подключение к удаленному репозиторию, щелкните заголовок с раскрывающимся
меню в Team Explorer , выберите Синхронизировать, чтобы перейти к разделу Синхронизация, и
используйте представленные там команды вытягивания и принесения.
Дополнительные подробности
Общие инструкции по созданию проекта из удаленного репозитория Git см. в статье Краткое руководство.
Клонирование репозитория с кодом Python в Visual Studio.

Подробное руководство и инструкции по обработке конфликтов слияния, проверке кода с запросами на


вытягивание, перемещении изменений из одной ветви в другую и отборе изменений см. в руководстве по
началу работы с Git и Azure Repos.

Обзор руководства
На этом руководство по Python в Visual Studio завершено. В этом руководстве вы узнали, как:

создавать проекты и просматривать их содержимое;


использовать редактор кода и запустить проект ;
использовать интерактивное окно для разработки нового кода и быстрого копирования этого кода в
редактор;
запускать готовую программу в отладчике Visual Studio;
устанавливать пакеты и управлять средами Python;
работать с кодом в репозитории Git.

Далее вы можете заняться изучением основных понятий и практических руководств, включая следующие
статьи:

Создание расширения C++ для Python


Публикация в службу приложений Azure
Профилирование
Модульное тестирование
Руководство. Начало работы с веб-платформой
Django в Visual Studio
21.10.2020 • 25 minutes to read • Edit Online

Django — это высокоуровневая платформа Python для быстрого создания безопасных и масштабируемых
веб-систем. В этом руководстве представлены сведения о платформе Django в контексте шаблонов
проекта, предоставляемых Visual Studio для упрощения создания веб-приложений на основе Django.

В этом руководстве описано следующее.

создавать базовый проект Django в репозитории Git с помощью шаблона "Пустой веб-проект Django"
(этап 1);
создавать приложение Django с одной страницей и преобразовать эту страницу для просмотра с
помощью шаблона (шаг 2);
обслуживать статические файлы, добавлять страницы и использовать наследование шаблонов (шаг 3);
использовать шаблон веб-проекта Django для создания приложения с несколькими страницами и
адаптивным дизайном (этап 4);
выполнять проверку подлинности пользователей (шаг 5);
с помощью шаблона веб-проекта опроса Django создать приложение, использующее модели, миграции
базы данных и настройки в интерфейсе администратора (шаг 6).

предварительные требования
Visual Studio 2017 или более поздней версии в системе Windows со следующими параметрами:
Рабочая нагрузка Разработка на Python (вкладка Рабочая нагрузка в установщике).
Инструкции см. в статье Установка поддержки Python в Visual Studio.
Git для Windows и расширение GitHub для Visual Studio на вкладке Отдельные
компоненты в разделе Средства кода .

Шаблоны проектов Django также входят в состав всех ранних версий инструментов Python для Visual
Studio, хотя сведения могут отличаться от рассматриваемых в этом руководстве (особенно это касается
более ранних версий платформы Django).

Разработка Python в настоящее время не поддерживается в Visual Studio для Mac. В системах Mac и Linux
используйте расширение Python в Visual Studio Code.

Проекты Visual Studio и проекты Django


В терминологии Django "проект Django" состоит из нескольких файлов конфигурации на уровне сайта
вместе с одним или несколькими "приложениями", развертываемыми на веб-узел для создания полного
веб-приложения. Проект Django может содержать несколько приложений. Точно так же приложение
может находиться в нескольких проектах Django.

Проект Visual Studio может содержать проект Django вместе с несколькими приложениями. В целях
упрощения в этом руководстве для проекта Visual Studio используется понятие "проект ". Когда же
говорится о проекте Django, используется конкретное словосочетание "проект Django".

Во время работы с этим руководством вы создадите одно решение Visual Studio с тремя отдельными
проектами Django, каждый из которых содержит одно приложение Django. Сохраняя проекты в одном и
том же решении, вы можете легко переключаться между различными файлами для сравнения.
Шаг 1–1. Создание проекта и решения Visual Studio
Обычно при работе с Django из командной строки нужно сначала создать проект , выполнив команду
django-admin startproject <project_name> . В Visual Studio использование шаблона "Пустой веб-проект
Django" обеспечивает ту же структуру, что и в проекте и решении Visual Studio.
1. В Visual Studio выберите Файл > Создать > Проект , выполните поиск по запросу "Django" и
выберите шаблон Пустой веб- проект Django . (Шаблон также можно найти в папке Python >
Интернет в списке слева.)

2. В нижней части диалогового окна в полях введите следующие сведения (как показано на
предыдущем рисунке), а затем нажмите кнопку ОК.

Имя. В качестве имени проекта Visual Studio укажите BasicProject . Это имя используется также и
для проекта Django.
Расположение . Укажите расположение для создания решения и проекта Visual Studio.
Решение . Оставьте в этом поле значение по умолчанию Создать новое решение .
Имя решения. Укажите LearningDjango . В этом руководстве данное имя подходит для
решения как контейнер для нескольких проектов.
Создать каталог для решения. Оставьте флажок установленным (по умолчанию).
Создать новый репозиторий Git . Выберите этот параметр (по умолчанию флажок не
установлен), чтобы при создании решения в Visual Studio был создан локальный репозиторий Git.
Если этот параметр не отображается, запустите Visual Studio Installer и добавьте Git для
Windows и Расширение GitHub для Visual Studio на вкладке Отдельные компоненты в
разделе Средства для работы с кодом.
3. Через некоторое время в Visual Studio отобразится диалоговое окно с сообщением Для этого
проекта требуются внешние пакеты (как показано ниже). Это диалоговое окно открывается,
так как шаблон включает файл requirements.txt, ссылающийся на последнюю версию пакета
Django 1.x. (Выберите Показать необходимые пакеты, чтобы просмотреть точный список
зависимостей.)
4. Выберите параметр I will install them myself (Я установлю их самостоятельно). В ближайшее время
вы можете создать виртуальное окружение и исключить его из системы управления версиями.
(Окружение всегда можно создать из requirements.txt.)

Шаг 1–2. Проверка элементов управления Git и публикация в


удаленном репозитории
Так как вы выбрали Создать новый репозиторий Git в диалоговом окне Новый проект , проект уже
был зафиксирован в локальной системе управления версиями сразу после завершения процесса создания.
На этом шаге вы ознакомитесь с элементами управления Git в Visual Studio и окном Team Explorer , в
котором вы будете работать с системой управления версиями.

1. Проверьте элементы управления Git в нижнем углу главного окна Visual Studio. Эти элементы
управления отображаются в следующем порядке (слева направо): неотправленные фиксации,
незафиксированные изменения, имя репозитория и текущая ветвь.

NOTE
Если вы не выбрали параметр Созд ать новый репозиторий Git в диалоговом окне Новый проект,
элементы управления Git отображают только команду Добавить в систему управления версиями,
которая создает локальный репозиторий.

2. Нажмите кнопку "Изменить" и в Visual Studio на странице изменений откроется окно Team
Explorer . Так как созданный проект уже зафиксирован в системе управления версиями
автоматически, ожидающие изменения не отобразятся.
3. В строке состояния Visual Studio нажмите кнопку фиксации (стрелка вверх со значением 2 ), чтобы
открыть страницу Синхронизация в Team Explorer . Так как у вас есть только локальный
репозиторий, страница предоставляет простые варианты для публикации репозитория для разных
удаленных репозиториев.

Для своих проектов вы можете выбрать любую службу. В этом руководстве используется GitHub.
Завершенный пример кода для работы см. в репозитории Microsoft/python-sample-vs-learning-
django.
4. При выборе любого из элементов управления Публикация Team Explorer предложит проверить
зависимости для получения дополнительной информации. Например, при публикации примера для
этого руководства сначала нужно было создать репозиторий, и в этом случае параметр Отправить
в удаленный репозиторий использовался с URL-адресом репозитория.
Если у вас нет репозитория, параметры Опубликовать в GitHub и Отправить в Azure DevOps
позволяют создать его непосредственно из Visual Studio.

5. При работе с этим руководством вы будете периодически использовать элементы управления в


Visual Studio для фиксации и отправки изменений. Мы напомним вам об этом при необходимости.

TIP
Для быстрого перемещения в Team Explorer выберите заголовок (Изменения или Отправить), чтобы открыть
контекстное меню доступных страниц.

Вопрос. Каковы преимущества использования системы управления версиями с самого начала проекта?
Ответ. Прежде всего использование системы управления версиями с самого начала, особенно если вы
также используете удаленный репозиторий, обеспечивает регулярное резервное копирование вашего
проекта. В отличие от поддержки проекта только в локальной файловой системе, система управления
версиями также предоставляет полную историю изменений и возможность отменить изменения одного
файла или всего проекта. История изменений помогает определить причину регрессий (сбои при
тестировании). Кроме того, система управления версиями необходима в случае, если над проектом
работают несколько человек. Она управляет перезаписыванием и обеспечивает разрешение конфликтов.
Наконец, система управления версиями, которая является формой автоматизации, отлично подходит для
автоматизации сборки, тестирования и управления выпусками. Это первый шаг в использовании DevOps
для проекта, и так как барьеры для входа настолько низки, нет оснований не использовать систему
управления версиями с самого начала.

Дополнительные сведения о системе управления версиями как средства автоматизации см. в статье Mobile
DevOps - The Source of Truth: The Role of Repositories in DevOps (DevOps для мобильных устройств.
Источник правды. Роль репозиториев в DevOps) в журнале MSDN. Эта статья написана для мобильных
приложений, однако она применима также и к веб-приложениям.

Вопрос. Можно ли отменить автоматическую фиксацию нового проекта в Visual Studio?


Ответ. Да. Чтобы отключить автоматическую фиксацию, перейдите на страницу Параметры в Team
Explorer , выберите Git > Глобальные параметры, снимите флажок Commit changes after merge by
default (Фиксировать изменения после объединения по умолчанию), а затем нажмите кнопку Обновить.

Шаг 1–3. Создание виртуального окружения и его исключение из


системы управления версиями
Теперь, когда вы настроили систему управления версиями для своего проекта, можно создать виртуальное
окружение, которое содержит необходимые пакеты Django для проекта. Затем с помощью Team Explorer
вы сможете исключить папку окружения из системы управления версиями.

1. В обозревателе решений щелкните правой кнопкой мыши элемент Окружения Python и


выберите Добавление виртуального окружения.
2. Откроется диалоговое окно Добавление виртуального окружения с сообщением Найден
файл requirements.txt . Это сообщение указывает , что Visual Studio использует данный файл для
настройки виртуального окружения.

3. Нажмите кнопку Создать, чтобы принять параметры по умолчанию. (При желании вы можете
изменить имя виртуального окружения, просто изменив имя своей подпапки. Однако env является
стандартным соглашением.)

4. Согласитесь с привилегиями администратора при появлении запроса, а затем подождите несколько


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

5. В элементах управления Visual Studio Git (в строке состояния) выберите индикатор изменений (со
значением 99* ), который открывает страницу Изменения в Team Explorer .

Создание виртуального окружения привело к многочисленным изменениям, но вам не нужно


включать их в систему управления версиями, потому что вы (или кто-то еще, клонирующий проект )
в любое время сможете воссоздать окружение из requirements.txt.

Чтобы исключить виртуальное окружение, щелкните правой кнопкой мыши папку env и выберите
Игнорировать эти локальные элементы.
6. После исключения виртуального окружения единственными оставшимися изменениями являются
файл проекта и .gitignore. Файл .gitignore содержит добавленную запись для папки виртуального
окружения. Вы можете дважды щелкнуть файл, чтобы увидеть различия.

7. Введите сообщение о фиксации и нажмите кнопку Зафиксировать все , а затем при желании
отправьте фиксации в удаленный репозиторий.

Вопрос. Зачем нужно создавать виртуальное окружение ?


Ответ. Виртуальное окружение — это хороший способ изолировать конкретные зависимости вашего
приложения. Такая изоляция позволяет избежать конфликтов в глобальном окружении Python и помогает
как тестированию, так и совместной работе. Позже при разработке приложения вы неизменно используете
множество необходимых пакетов Python. Сохраняя пакеты в виртуальном окружении, зависящем от
проекта, вы сможете легко обновить файл requirements.txt проекта, описывающий это окружение в
системе управления версиями. При копировании проекта на любые другие компьютеры, включая серверы
сборки, серверы развертывания и другие компьютеры разработки, легко воссоздать окружение, используя
только requirements.txt (поэтому окружение не должно находиться в системе управления версиями). См.
дополнительные сведения о виртуальных окружениях.

Вопрос. Как удалить виртуальное окружение , которое уже было привязано к системе управления
версиями?
Ответ. Сначала измените файл .gitignore, чтобы исключить папку. Найдите раздел с комментарием
# Python Tools for Visual Studio (PTVS) в конце и добавьте новую строку для папки виртуального
окружения, например /BasicProject/env . (Так как в Visual Studio файл не отображается в обозревателе
решений, откройте его напрямую с помощью команды меню Файл > Открыть > Файл. Вы также можете
открыть файл из Team Explorer . На странице Параметры выберите Параметры репозитория,
перейдите в раздел Пропуск и файлы атрибутов, а затем щелкните ссылку Изменить рядом с
.gitignore .)
Во-вторых, откройте окно команд, перейдите к папке типа BasicProject, содержащей папку виртуального
окружения, например env, и выполните команду git rm -r env . Затем скопируйте эти изменения из
командной строки ( git commit -m 'Remove venv' ) или зафиксируйте на странице изменений в Team
Explorer .
Шаг 1–4. Изучение стереотипного кода
После завершения создания проекта изучите стереотипный код проекта Django (который снова совпадает
с кодом, созданным командой CLI django-admin startproject <project_name> ).

1. В проекте в качестве корневого компонента используется административная служебная программа


командной строки Django manage.py, которую Visual Studio автоматически устанавливает в качестве
файла запуска проекта. Запустите служебную программу в командной строке с помощью
python manage.py <command> [options] . Для выполнения стандартных задач Django Visual Studio
предоставляет удобные команды меню. В обозревателе решений щелкните проект правой
кнопкой мыши и выберите пункт Python , чтобы открыть список. Некоторые из этих команд
используются при работе с данным руководством.

2. В вашем проекте находится папка с именем проекта. В ней содержатся основные файлы проекта
Django.
__init.py — пустой файл, который сообщает Python, что эта папка представляет собой пакет
Python.
wsgi.py — точка входа для веб-серверов, совместимых с WSGI, для использования в проекте.
Обычно этот файл не нужно изменять, так как он предоставляет обработчики для рабочих
веб-серверов.

Файл settings.py содержит параметры для проекта Django, которые вы изменяете в процессе
разработки веб-приложения.

Файл urls.py содержит таблицу содержимого для проекта Django, которое вы также изменяете
в процессе разработки.
3. Как отмечалось ранее, шаблон Visual Studio также добавляет в проект файл requirements.txt,
определяющий зависимость пакета Django. Этот файл предлагает создать виртуальное окружение
при первом создании проекта.

Вопрос. Может ли Visual Studio создать файл requirements.txt из виртуального окружения после
установки других пакетов?
Ответ. Да. Разверните узел Окружения Python , щелкните свое виртуальное окружение правой кнопкой
мыши и выберите команду Создать requirements.txt . Эту команду хорошо использовать периодически
при изменении окружения и фиксировать изменения в файле requirements.txt в системе управления
версиями вместе с любыми другими изменениями кода, которые зависят от этого окружения. Если вы
настроили непрерывную интеграцию на сервере сборки, каждый раз при изменении окружения
необходимо создавать файл и фиксировать изменения.

Шаг 1–5. Запуск пустого проекта Django


1. В Visual Studio выберите Отладка > Начать отладку (F5 ) или нажмите кнопку Веб- сервер на
панели инструментов (браузер может отличаться).

2. Запуск сервера означает запуск команды manage.py runserver <port> , которая запускает встроенный
сервер разработки Django. Если в Visual Studio отображается сообщение Не удалось запустить
отладчик с сообщением об отсутствии файла запуска, щелкните правой кнопкой мыши файл
manage.py в обозревателе решений и выберите пункт Задать как файл запуска .
3. При запуске сервера откроется окно консоли, в котором также отображается журнал сервера. Visual
Studio автоматически открывает браузер для http://localhost:<port> . Однако, так как в проекте
Django нет приложений, Django отображает только страницу по умолчанию, чтобы сообщить о
нормальном состоянии процесса работы.

4. По окончании остановите сервер, закрыв консольное окно или используя команду Отладка >
Остановить отладку в Visual Studio.
Вопрос. Является ли Django веб-сервером и платформой?
Ответ. Да и нет. Django имеет встроенный веб-сервер, который используется для целей разработки. Этот
веб-сервер используется, когда вы запускаете веб-приложение локально, например при отладке в Visual
Studio. Однако при развертывании на веб-узел Django вместо него использует веб-сервер узла. Модуль
wsgi.py в проекте Django отвечает за подключение к рабочим серверам.
Вопрос. В чем разница между использованием команд меню "Отладка" и команд сервера в подменю
проекта Python?
Ответ. В дополнение к командам меню Отладка и кнопкам панели инструментов вы также можете
запустить сервер с помощью команд Python > Запуск сервера или Python > Запуск сервера
отладки в контекстном меню проекта. Обе команды открывают окно консоли, в котором содержится
локальный URL-адрес (localhost:port) для работающего сервера. Однако вы должны вручную открыть
браузер с этим URL-адресом. Запуск сервера отладки автоматически не запускает отладчик Visual Studio.
При желании вы можете присоединить отладчик к процессу позже с помощью команды Отладка >
Присоединение к процессу.

Дальнейшие действия
На данный момент основной проект Django не содержит приложений. Вы создаете приложение на
следующем шаге. Так как вы обычно больше работаете с приложениями Django, чем с проектом Django,
нет необходимости подробнее изучать стереотипные файлы.

Tutorial step 2: Create a Django app with views and page templates (Руководство (шаг 2). Создание
приложения Django с представлениями и шаблонами страниц)

Дополнительные подробности
Код проекта Django: Writing your first Django app, part 1 (Написание первого приложения Django (часть
1)) (docs.djangoproject.com)
Административная служебная программа: django-admin и manage.py (docs.djangoproject.com)
Руководство по исходному коду на сайте GitHub: Microsoft/python-sample-vs-learning-django
Шаг 2. Создание приложения Django с
представлениями и шаблонами страниц
21.10.2020 • 25 minutes to read • Edit Online

Предыдущий шаг. Создание проекта и решения Visual Studio

В проекте Visual Studio имеются только компоненты на уровне сайта проекта Django, с помощью которых
можно выполнить одно или несколько приложений Django. Следующий шаг — создание первого
одностраничного приложения.

На этом шаге вы научитесь делать следующее:

Создание одностраничного приложения Django (шаг 2–1).


Запуск приложения из проекта Django (шаг 2–2).
Преобразование представления с помощью HTML (шаг 2–3).
Преобразование представления с помощью шаблона страницы Django (шаг 2–4).

Шаг 2-1. Создание приложения со стандартной структурой


Приложение Django — это отдельный пакет Python, который содержит набор связанных файлов для
определенной цели. Проект Django может содержать любое количество приложений. Это отражает тот
факт , что веб-узел может обслуживать любое количество отдельных точек входа с одного доменного
имени. Например, проект Django для такого домена как contoso.com может содержать одно приложение
для www.contoso.com , второе — для support.contoso.com и третье — для docs.contoso.com. В этом случае
проект Django обрабатывает параметры и маршрутизацию URL-адресов на уровне сайтов (в файлах urls.py
и settings.py), в то время как каждое приложение имеет собственное значение и реакцию на событие через
внутреннюю маршрутизацию, представления, модели, статические файлы и административный интерфейс.

Приложение Django обычно начинается со стандартного набора файлов. Visual Studio предоставляет
шаблоны элемента для запуска приложения Django в проекте Django, а также интегрированную команду
меню, которая выполняет ту же функцию.

Шаблоны. В обозревателе решений щелкните проект правой кнопкой мыши и выберите


Добавить > Новый элемент . В диалоговом окне Добавить новый элемент выберите шаблон
Приложение Django 1.9 , укажите имя приложения в поле Имя и нажмите кнопку O К.

Встроенная команда. В обозревателе решений щелкните проект правой кнопкой мыши и


выберите Добавить > Приложение Django . Эта команда запрашивает имя и создает приложение
Django 1.9.
Создайте приложение с именем HelloDjangoApp, используя любой из методов. В результате будет создана
папка в проекте с тем же именем, которая содержит элементы, как описано в указанной ниже таблице.

ЭЛЕМЕНТ ОПИСАНИЕ

__init__.py Файл, определяющий приложение в качестве пакета.


ЭЛЕМЕНТ ОПИСАНИЕ

migrations Папка, в которой Django хранит скрипты, обновляющие


базу данных в соответствии с изменениями в моделях.
Затем средства миграции Django применяют
необходимые изменения к любой из предыдущих версий
базы данных для соответствия текущим моделям. С
помощью миграции вы можете сконцентрироваться на
работе с моделями и позволить Django обрабатывать
базовую схему базы данных. Сведения о миграции см. в
шаге 6. Теперь папка просто содержит файл __init__.py
(это значит , что папка определяет собственный пакет
Python).

templates Папка для шаблонов страницы Django содержит один


файл index.html в папке с именем приложения. (В Visual
Studio 2017 15.7 и более ранних версий этот файл
находится прямо под шаблонами, и в шагах 2–4 вы
создаете вложенную папку.) Шаблоны — это блоки
HTML-кода, в которые представления могут добавлять
сведения для динамического отображения страницы.
Переменные шаблона страницы, например
{{ content }} в index.html, — это заполнители для
динамических значений, как описано далее в этой статье
(шаг 2). Обычно приложения Django создают
пространство имен для своих шаблонов, помещая их в
подпапку , которая соответствует имени приложения.

admin.py Файл Python, в котором расширяется административный


интерфейс приложения (см. шаг 6), используемый для
просмотра и изменения данных в базе данных.
Изначально файл содержит только оператор,
from django.contrib import admin . По умолчанию
Django содержит стандартный административный
интерфейс благодаря записям в файле settings.py проекта
Django, который можно включить, раскомментировав
имеющиеся записи в urls.py.

apps.py Файл Python, который определяет класс конфигурации


для приложения (см. после этой таблицы ниже).

models.py Модели — это определенные функциями объекты


данных , с помощью которых представления
взаимодействуют с основной базой данных приложения
(см. шаг 6). Django предоставляет уровень подключения к
базе данных , поэтому приложениям не нужно
обрабатывать эти сведения. Файл models.py — это
стандартное расположение для создания моделей.
Изначально он содержит только оператор
from django.db import models .

tests.py Файл Python, содержащий базовую структуру


модульных тестов.
ЭЛЕМЕНТ ОПИСАНИЕ

views.py Представления — это то, что вы обычно представляете


в качестве веб-страниц. Они принимают HTTP-запрос и
возвращают HTTP-ответ. Представления обычно
отображаются в виде HTML-кода в веб-браузерах ,
однако представление не обязательно должно быть
видимым (как промежуточная форма). Представление
определяется функцией Python, которая отвечает за
обработку HTML-кода для отправки в браузер. Файл
views.py — это стандартное расположение для создания
представлений. Изначально он содержит только
оператор from django.shortcuts import render .

При использовании имени HelloDjangoApp файл app.py имеет следующее содержимое:

from django.apps import AppConfig

class HelloDjangoAppConfig(AppConfig):
name = 'HelloDjango'

Вопрос. Отличается ли создание приложения Django в Visual Studio от создания приложения в


командной строке ?
Ответ. Если выполнить команду Добавить > Приложение Django или Добавить > Новый элемент в
шаблоне приложения Django, будут созданы те же файлы, что и при использовании команды Django
manage.py startapp <app_name> . Преимуществом создания приложения в Visual Studio является то , что папка
приложения и все ее файлы автоматически интегрируются в проект. С помощью той же команды Visual
Studio можно создать любое количество приложений в проекте.

Шаг 2-2. Запуск приложения из проекта Django


Теперь, если вы снова запустите проект в Visual Studio (используя кнопку панели инструментов или
выполнив команды Отладка > Начать отладку), отобразится страница по умолчанию. Содержимое
приложения не отобразится, так как для этого необходимо определить страницу приложения и добавить
приложение в проект Django.

1. В папке HelloDjangoApp измените значение views.py в соответствии с кодом ниже, который


определяет представление с именем index:

from django.shortcuts import render


from django.http import HttpResponse

def index(request):
return HttpResponse("Hello, Django!")

2. В папке BasicProject (созданной в шаге 1) измените значение urls.py, чтобы оно по крайней мере
соответствовало следующему коду (при необходимости можно оставить полезные комментарии):

from django.conf.urls import include, url


import HelloDjangoApp.views

# Django processes URL patterns in the order they appear in the array
urlpatterns = [
url(r'^$', HelloDjangoApp.views.index, name='index'),
url(r'^home$', HelloDjangoApp.views.index, name='home'),
]
Каждый шаблон URL-адреса описывает представления, в которые Django направляет определенные
URL-адреса, связанные с сайтом (это фрагмент после https://www.domain.com/ ). Первая запись в
urlPatterns , которая начинается с регулярного выражения ^$ , — это маршрутизация для корня
сайта, "/". Вторая запись ^home$ конкретно направляет /home. К одному представлению можно иметь
любое количество маршрутов.

3. Повторно запустите проект , чтобы отобразилось сообщение Hello, Django! , как определено
представлением. По завершении остановите сервер.

Фиксация в системе управления версиями


Так как вы внесли изменения в код и успешно их протестировали, пришло время просмотреть и
зафиксировать изменения в системе управления версиями. В дальнейших шагах этой статьи указано
соответствующее время для повторной фиксации изменений в системе управления версиями, после чего
необходимо будет вернуться к этому разделу.

1. Нажмите кнопку изменения в нижней части Visual Studio (выделена кружком ниже), чтобы перейти к
Team Explorer .

2. В Team Explorer введите сообщение фиксации, например "Создать исходное приложение Django" и
выберите Зафиксировать все . После завершения фиксации отобразится сообщение Фиксация
<hash> создана локально. Синхронизируйте , чтобы использовать изменения совместно
с сервером. Если вы хотите отправить изменения в удаленный репозиторий, выберите
Синхронизировать, а затем — Отправить в разделе Исходящие фиксации. Кроме того, вы
можете накапливать несколько локальных фиксаций перед отправкой в удаленный репозиторий.

Вопрос. Что означает префикс r перед строками маршрутизации?


Ответ. Префикс r в строке Python означает raw (без обработки). Это предписывает Python не использовать
escape-символы в строке. Так как в регулярных выражениях используется множество специальных
символов, использование префикса r значительно упрощает чтение этих строк по сравнению с тем, если бы
они содержали определенное количество escape-символов \.

Вопрос. Что означают символы ^ и $ в записях маршрутизации URL -адреса?


Ответ. В регулярных выражениях, определяющих шаблоны URL-адреса, ^ означает start of line (начало
строки), а $ — end of line (конец строки), где URL-адреса аналогичным образом являются относительными
для корня сайта (часть за https://www.domain.com/ ). Регулярное выражение ^$ фактически означает blank
(пусто) и поэтому соответствует полному URL-адресу https://www.domain.com/ (ничего не добавляется к
корню сайта). Шаблон ^home$ точно соответствует https://www.domain.com/home/ . (Django не использует
косую черту (/) в конце сопоставления шаблона.)

Если вы не используете в конце регулярного выражения символ $, как в случае с ^home , то шаблон URL-
адреса соответствует любому URL-адресу, который начинается с home, например home, homework,
homestead и home192837.
Чтобы поэкспериментировать с разными регулярными выражениями, попробуйте воспользоваться
интерактивными средствами, например regex101.com в pythex.org.

Шаг 2-3. Преобразование представления с помощью HTML


Функция index в views.py создает только ответы HTTP в простом текстовом формате для страницы.
Большинство реальных веб-страниц, разумеется, предоставляют ответы с большим количеством страниц
HTML, которые часто содержат фактические данные. На самом деле основной причиной для определения
представления с помощью функции является возможность создать содержимое динамически.

Так как аргумент в HttpResponse — это просто строка, вы можете создать любой необходимый HTML-код в
строке. Вот простой пример. Замените функцию index указанным ниже кодом (сохраняя при этом
имеющиеся операторы from ), который создает HTML-ответ с помощью динамического содержимого. Оно
обновляется каждый раз при обновлении страницы.

from datetime import datetime

def index(request):
now = datetime.now()

html_content = "<html><head><title>Hello, Django</title></head><body>"


html_content += "<strong>Hello Django!</strong> on " + now.strftime("%A, %d %B, %Y at %X")
html_content += "</body></html>"

return HttpResponse(html_content)

Повторно запустите проект , чтобы отобразилось сообщение Hello, Django! в понедельник, 16 апреля,
2018 г. в 16:28:10. Обновите страницу, чтобы обновить время, и убедитесь, что содержимое создается при
каждом запросе. По завершении остановите сервер.

TIP
Чтобы быстро остановить и перезапустить проект , выполните команду меню Отлад ка > Перезапустить
(CTRL +SHIFT +F5 ) или нажмите кнопку Перезапуск на панели инструментов отладки:

Шаг 2-4. Преобразование представления с помощью шаблона


страницы
Создание HTML в коде работает нормально для маленьких страниц. Однако по мере усложнения страниц
обычно нужно сохранить статические части HTML своей страницы (вместе с ссылками на файлы CSS и
JavaScript) в качестве ее шаблонов, в которые вы затем вставите динамическое содержимое, созданное в
коде. В предыдущем разделе только дата и время вызова now.strftime являлись динамическими. Это
значит , что остальное содержимое можно поместить в шаблон страницы.

Шаблон страницы Django — это блок HTML-кода, содержащий любое количество маркеров замены,
которые называются переменными. Они разделены {{ и }} , как и в {{ content }} . Затем модуль
шаблонов Django заменяет переменные динамическим содержимым, предоставленным в коде.

В следующих шагах показано использование шаблонов страницы.

1. В папке BasicProject, содержащей проект Django, откройте файл settings.py и добавьте имя
приложения HelloDjangoApp в список INSTALLED_APPS . Добавление приложения в список указывает
проекту Django, что в приложении уже есть папка с идентичным именем.

INSTALLED_APPS = [
'HelloDjangoApp',
# Other entries...
]

2. Кроме того, в settings.py убедитесь в том, что объект TEMPLATES содержит следующую строку
(включена по умолчанию), которая указывает Django, что нужно найти шаблоны в папке templates
установленного приложения:

'APP_DIRS': True,

3. В папке HelloDjangoApp откройте файл шаблона страницы templates/HelloDjangoApp/index.html (или


templates/index.html в Visual Studio 2017 15.7 и более ранних версий), чтобы увидеть, что в нем
находится только одна переменная {{ content }} :

<html>
<head><title></title></head>

<body>

{{ content }}

</body>
</html>

4. В папке HelloDjangoApp откройте views.py и замените функцию приведенным ниже кодом, в


index
котором используется вспомогательная функция django.shortcuts.render . Вспомогательная функция
render предоставляет упрощенный интерфейс для работы с шаблонами страницы. Не забудьте
сохранить все имеющиеся операторы from .

from django.shortcuts import render # Added for this step

def index(request):
now = datetime.now()

return render(
request,
"HelloDjangoApp/index.html", # Relative path from the 'templates' folder to the template file
# "index.html", # Use this code for VS 2017 15.7 and earlier
{
'content': "<strong>Hello Django!</strong> on " + now.strftime("%A, %d %B, %Y at %X")
}
)

Первый аргумент в render , как можно увидеть, — это объект запроса, за которым следует
относительный путь к файлу шаблона в папке templates приложения. Файл шаблона называется в
соответствии с поддерживаемым представлением, если это уместно. Третий аргумент в render
представляет собой словарь переменных, к которым относится шаблон. Вы можете добавить объект
в словарь. В этом случае переменная в шаблоне может ссылаться на {{ object.property }} .

5. Запустите проект и просмотрите выходные данные. Должно отобразиться идентичное сообщение,


что и на шаге 2–2. Оно означает , что шаблон работает.
Обратите внимание, что HTML, используемый в свойстве content , отображается только в качестве
обычного текста, так как функция render автоматически экранирует этот HTML. Автоматическое
экранирование предотвращает случайные уязвимости в отношении атак путем внедрения кода:
разработчики часто собирают входные данные с одной страницы и используют их в качестве
значения на другой странице с помощью заполнителя шаблона. Экранирование служит
напоминанием о том, что HTML-код рекомендуется хранить в шаблоне страницы, а не в коде. К
счастью, создание дополнительных переменных при необходимости не представляет трудностей.
Например, измените index.html с шаблонами в соответствии со следующими исправлениями, в
которых добавлен заголовок страницы и сохранено все форматирование в шаблоне страницы:

<html>
<head>
<title>{{ title }}</title>
</head>
<body>
<strong>{{ message }}</strong>{{ content }}
</body>
</html>

Затем запишите функцию представления index указанным ниже образом, чтобы предоставить
значения для всех переменных в шаблоне страницы.

def index(request):
now = datetime.now()

return render(
request,
"HelloDjangoApp/index.html", # Relative path from the 'templates' folder to the template file
# "index.html", # Use this code for VS 2017 15.7 and earlier
{
'title' : "Hello Django",
'message' : "Hello Django!",
'content' : " on " + now.strftime("%A, %d %B, %Y at %X")
}
)

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

7. Visual Studio 2017 версии 15.7 или более ранних версий. В качестве завершающего этапа
переместите шаблоны в подпапку, имя которой совпадает с именем приложения, которое создает
пространство имен и позволяет избежать возможных конфликтов с другими приложениями,
добавленными в проект. (Шаблоны в Visual Studio 2017 15.8+ делают это автоматически.) Другими
словами, создайте вложенную папку в templates с именем HelloDjangoApp, переместите файл
index.html в эту вложенную папку и измените функцию представления index так, чтобы она
ссылалась на новый путь шаблона HelloDjangoApp/index.html. Затем запустите проект , убедитесь, что
страница отображается должным образом и остановите сервер.

8. Зафиксируйте изменения в системе управления версиями и обновите удаленный репозиторий при


необходимости, как описано в шаге 2–2.

Вопрос. Следует ли хранить шаблоны страницы в отдельном файле ?


Ответ. Хотя шаблоны обычно хранятся в отдельных HTML-файлах, вы также можете использовать
встроенный шаблон. Чтобы сохранить четкое разделение между исправлением и кодом, рекомендуется
использовать отдельный файл.

Вопрос. Следует ли использовать в шаблонах расширение файлов HTML?


Ответ. Использовать расширение .html для файлов шаблона страницы совсем необязательно, так как вы
всегда определяете точный относительный путь к файлу во втором аргументе функции render . Однако
Visual Studio (и другие редакторы) обычно предоставляет такие функции, как завершение кода или
разметка синтаксиса, для файлов HTML , что значительно важнее того, что шаблоны страниц не имеют
строгого формата HTML.

На самом деле при работе с проектом Django Visual Studio автоматически обнаруживает , если HTML-файл,
который вы редактируете, фактически является шаблоном Django, и предоставляет несколько функций с
автоматическим завершением. Например, когда вы начинаете вводить комментарий шаблона страницы
Django, {# , Visual Studio автоматически предоставляет вам закрывающие символы #} . В командах
Закомментировать выделенный фрагмент и Раскомментировать выделенный фрагмент (в
меню Изменить > Дополнительно или на панели инструментов) также используются комментарии
шаблона, а не HTML.

Вопрос. При запуске проекта отображается ошибка, что шаблон не найден. В чем проблема?
Ответ. Если отображаются сообщения о том, что не удается найти шаблон, убедитесь в том, что вы
добавили приложение в файл settings.py проекта Django в списке INSTALLED_APPS . Без этой записи Django не
сможет выполнять поиск в папке templates приложения.

Вопрос. Почему организация пространства имен шаблона важна?


Ответ. Когда платформа Django выполняет поиск шаблона, упомянутого в функции render , она использует
первый найденный файл, который соответствует относительному пути. Если у вас есть несколько
приложений Django в одном проекте, использующие одну структуру папок для шаблонов, скорее всего,
одно приложение будет непреднамеренно использовать шаблон из другого приложения. Чтобы избежать
подобных ошибок, всегда создавайте вложенную папку в папке templates приложения, которая
соответствует имени приложения. Это позволит избежать любого дублирования.

Следующие шаги
Обработка статических файлов, добавление страниц и использование наследования шаблонов

Дополнительные подробности
Write your first view (Написание первого представления) (docs.djangoproject.com)
Дополнительные сведения о возможностях шаблонов Django, таких как включение и наследование, см. в
статье The Django template language (Язык шаблона Django) (docs.djangoproject.com)
Regular Expressions (Регулярные выражения) (LinkedIn)
Исходный код учебника на GitHub: Microsoft/python-sample-vs-learning-django
Шаг 3. Обработка статических файлов, добавление
страниц и использование наследования шаблонов
с помощью приложения Django
21.10.2020 • 17 minutes to read • Edit Online

Предыдущий шаг. Создание приложения Django с представлениями и шаблонами страниц

В предыдущих шагах этого руководства рассматривалось создание минимального приложения Django с


одной страницей автономного HTML. Современные веб-приложения обычно состоят из многих страниц и
используют общие ресурсы, такие как файлы CSS и JavaScript, для обеспечения согласованного стиля и
реакции на события.

На этом шаге вы научитесь делать следующее:

с помощью шаблонов элементов Visual Studio быстро добавлять новые файлы различных типов с
удобным стереотипным кодом (шаг 3.1);
настраивать проект Django для обслуживания статических файлов (шаг 3–2);
добавлять дополнительные страницы в приложение (шаг 3–3);
использовать наследование шаблона для создания заголовка и панели навигации, которая используется
на разных страницах (шаг 3–4).

Шаг 3-1. Знакомство с шаблонами элементов


По мере разработки приложения Django обычно добавляется множество дополнительных файлов Python,
HTML, CSS и JavaScript. Для каждого типа файла (а также других файлов, таких как web.config, которые
могут понадобиться для развертывания) Visual Studio предоставляет удобные шаблоны элементов для
начала работы.

Чтобы просмотреть доступные шаблоны, перейдите к обозревателю решений, щелкните правой


кнопкой мыши папку, в которой необходимо создать элемент , выберите Добавить > Новый элемент :
Чтобы использовать шаблон, выберите нужный шаблон, укажите имя файла и нажмите кнопку ОК. При
добавлении элемента таким образом автоматически добавляется файл в