создание приложения для сайта на питоне

Создание реактивных аналитических веб-приложений с использованием Python и библиотеки Dash

Авторизуйтесь

Создание реактивных аналитических веб-приложений с использованием Python и библиотеки Dash

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

Создание веб-приложений на Python с помощью Dash

Dash — библиотека пользовательского интерфейса для создания аналитических веб-приложений. Она будет полезна для тех, кто использует Python для анализа и исследования данных, визуализации, моделирования и отчётности.

Dash значительно упрощает создание GUI (графических пользовательских интерфейсов) для анализа данных. Вот пример приложения на Dash из 43 строк кода, который связывает выпадающее меню с графиком D3.js. Когда пользователь выбирает значение в выпадающем списке, код динамически экспортирует данные из Google Finance в Pandas DataFrame:

создание приложения для сайта на питоне. 1 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-1 python dash. картинка создание приложения для сайта на питоне. картинка 1 python dash.

Код Dash является декларативным и реактивным, что упрощает создание сложных приложений, содержащих множество интерактивных элементов. Вот пример с 5 входными данными, 3 — выходными и с перекрёстной фильтрацией. Это приложение было написано на Python, и в нём всего лишь 160 строк кода:

создание приложения для сайта на питоне. 2 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-2 python dash. картинка создание приложения для сайта на питоне. картинка 2 python dash.

Приложение на Dash с несколькими входными и выходными данным.

Для каждого элемента приложения можно задать собственные параметры размера, расположения, цвета и шрифта. Приложения на Dash создаются и публикуются в Сети, поэтому к ним можно применить всё, на что способен CSS. Ниже иллюстрируется пример тонко настраиваемого интерактивного приложения отчётности на Dash, выполненного в стиле отчёта финансовой организации Goldman Sachs.

создание приложения для сайта на питоне. 3 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-3 python dash. картинка создание приложения для сайта на питоне. картинка 3 python dash.

Тонко настраиваемое приложение Dash, созданное в стиле отчёта финансовой организации Goldman Sachs.

Вам не нужно писать какой-либо код на JavaScript или HTML, когда ваше приложение на Dash запущено в веб-браузере. Dash предоставляет богатый набор интерактивных веб-компонентов.

создание приложения для сайта на питоне. 4 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-4 python dash. картинка создание приложения для сайта на питоне. картинка 4 python dash.

Пример простого ползунка на Dash

Dash предоставляет простой реактивный декоратор для привязки вашего кода анализа данных к пользовательскому интерфейсу Dash.

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

Старт 22 ноября, 4 месяца, Онлайн, От 35 000 до 100 000 ₽

Ваша функция Python может выполнять различные действия с новым входным значением: может фильтровать объект DataFrame библиотеки Pandas, выполнять SQL-запрос, запускать симуляцию, выполнять вычисления или запускать тестирование. Dash рассчитывает, что ваша функция вернёт новое свойство для какого-нибудь элемента пользовательского интерфейса, будь то новый график, новая таблица или новый текст.

В качестве примера ниже представлено приложение на Dash, которое обновляет текстовый элемент при взаимодействии с графиком. Код приложения фильтрует данные в Pandas DataFrame на основе выбранной точки:

создание приложения для сайта на питоне. 5 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-5 python dash. картинка создание приложения для сайта на питоне. картинка 5 python dash.

Приложение ниже отображает метаинформацию о лекарственных веществах при наведении курсора на точки в графике. Код приложения также добавляет строки в таблицу, когда появляются новые компоненты в выпадающем списке.

создание приложения для сайта на питоне. dash big. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-dash big. картинка создание приложения для сайта на питоне. картинка dash big.

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

Архитектура

Flask и React.js

Приложения на Dash — веб-серверы, которые запускают Flask и связывают пакеты JSON через HTTP-запросы. Интерфейс Dash формирует компоненты, используя React.js.

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

React.js также великолепен, например, мы переписали всю нашу веб-платформу и наш онлайн-редактор диаграмм с помощью React. Но есть кое-что, что действительно радует насчёт React — активный и талантливый состав сообщества разработчиков, который опубликовал тысячи высококачественных компонентов, начиная с выпадающих списков и слайдеров, заканчивая календарями и интерактивными таблицами. И всё это публикуется с открытым исходным кодом!

Dash использует мощь Flask и React, подстраивая их под работу с Python для специалистов по анализу и обработке данных, которые могут не быть экспертами в области веб-разработки.

От React.js к компонентам Python

Вот пример динамически сгенерированной проверки ошибочного аргумента:

Пример динамически создаваемых строк документации:

Ваше приложение автоматически не привязывается к библиотеке компонентов Dash. Библиотека компонентов импортируется отдельно от основной библиотеки Dash. С помощью набора инструментальных средств React-to-Dash можно легко записать или перенести компонент React.js в класс Python, который можно использовать в приложении Dash. На официальном сайте вы найдёте руководство по созданию собственных компонентов или можете попросить команду разработчиков Dash написать их для вас.

Многопользовательские приложения

Свойства приложения на Dash хранятся в интерфейсе (в браузере). Это позволяет использовать приложения, написанные с использованием Dash, в многопользовательском режиме: может быть открыто несколько независимых друг от друга сессий, в которых действия одних пользователей не будут влиять на данные других пользователей. Код приложения на Dash является функциональным: он может считывать значения из глобальных свойств Python, но не может вносить в них изменения. Этот функциональный подход можно легко обосновать и протестировать — это просто входные и выходные данные без каких-либо побочных эффектов или свойств.

CSS и стили

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

Визуализация данных

Библиотека Dash поставляется с компонентом Graph, который отвечает за отображение диаграмм с помощью Plotly.js. Библиотека Plotly.js отлично подходит к Dash (отличное дополнение), так как она декларативна и имеет открытый исходный код. Кроме того, она поддерживает полный спектр научных, финансовых и деловых диаграмм. Она создана на основе D3.js (для диаграмм типографического качества и экспорта векторных изображений) и WebGL (для высокопроизводительной визуализации).

В библиотеке Dash элемент Graph использует тот же синтаксис, что и библиотека Plotly.py с открытым исходным кодом, что даёт вам возможность легко переключаться между ними. Компонент Graph подключается к системе событий Plotly.js, позволяя авторам писать приложения, которые реагируют на наведение курсора, щелчки и выбор определённых точек на графиках Plotly.

создание приложения для сайта на питоне. 7 python dash 1. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-7 python dash 1. картинка создание приложения для сайта на питоне. картинка 7 python dash 1.

создание приложения для сайта на питоне. 8 python dash 1. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-8 python dash 1. картинка создание приложения для сайта на питоне. картинка 8 python dash 1.

Репозитории с открытым исходным кодом

Прототипирование

Dash — это новая библиотека в среде Python, однако концепции и идеи, на которых строится Dash, существуют в течение десятилетий на разных языках и в разных приложениях.

Если вы разбираетесь в Excel, значит, вам будет проще разобраться и в Dash. Ведь они оба используют «реактивную» модель программирования. В Excel ячейки с выходными данными обновляются автоматически при изменении параметров ячеек с входными данными. Любая ячейка может быть входной или выходной или и тем, и другим. В ячейках с входными данными нет информации о том, какие ячейки с выходными данными зависят от них, что упрощает добавление новых ячеек с выходными данными или позволяет связать несколько ячеек. Вот пример Excel-приложения:

создание приложения для сайта на питоне. 9 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-9 python dash. картинка создание приложения для сайта на питоне. картинка 9 python dash.

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

создание приложения для сайта на питоне. 10 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-10 python dash. картинка создание приложения для сайта на питоне. картинка 10 python dash.

Некоторым разработчикам нравится этот пример, потому что Excel по-прежнему занимает доминирующее положение даже в технических вычислениях и в финансовой математике. Я не думаю, что доминирующее положение Excel — это технический вопрос. В конце концов, есть легионы программистов, которые изучили нюансы Excel, VBA и даже SQL.

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

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

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

Фреймворк Shiny

Если вы программируете на R, вам повезло. Shiny — это реактивный фреймворк для создания веб-приложений на чистом R, и это отлично! Вы даже можете создавать интерактивные графики с библиотекой Shiny или Plotly для R. Dash и Shiny похожи, но Dash не стремится быть копией Shiny, так как философии Python и R достаточно различаются, что приводит к необходимости использования разного синтаксиса.

создание приложения для сайта на питоне. 11 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-11 python dash. картинка создание приложения для сайта на питоне. картинка 11 python dash.

Интерактивное веб-приложение, созданное с помощью Shiny на языке R.

Структурирование данных с MATLAB

Если вы программируете на MATLAB, то вам, возможно, знакома GUIDE — библиотека пользовательского интерфейса для MATLAB. Компания Mathworks была одной из новаторов в области технических вычислений. GUIDE была написана в далёком 2004 году.

создание приложения для сайта на питоне. 12 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-12 python dash. картинка создание приложения для сайта на питоне. картинка 12 python dash.

Приложение, созданное с помощью библиотеки GUIDE на MATLAB.

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

создание приложения для сайта на питоне. ezgif.com optimize 2. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-ezgif.com optimize 2. картинка создание приложения для сайта на питоне. картинка ezgif.com optimize 2.

Перекрёстная фильтрация в Tableau.

Dash также служит дополнением к BI-инструментам, наподобие вышеупомянутых. Они отлично подходят для структурирования данных. Но когда дело доходит до преобразования данных и аналитики, превзойти размах и гибкость языков программирования и сообществ, вроде Python, становится труднее. Dash абстрагируется от множества сложностей в создании пользовательских интерфейсов, позволяя вам сделать это красиво для вашей аналитической базы данных.

Виджеты Jupyter

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

создание приложения для сайта на питоне. 14 python dash. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-14 python dash. картинка создание приложения для сайта на питоне. картинка 14 python dash.

Виджеты в Dash похожи на виджеты Jupyter. В Jupyter Notebooks есть возможность добавлять виджеты непосредственно рядом с кодом. В Dash элементы управления хранятся отдельно от вашего кода. Dash больше нацелена на приложения для распространения, чем на распространяемый код и документацию. Вы всегда можете смешивать и сопоставлять инструменты, создавая свои приложения на Dash в среде Jupyter Notebook.

Команде разработчиков Dash также очень нравится проект nteract, который действительно снижает порог вхождения в Python и Jupyter Notebook, позволяя упаковать Jupyter Notebook в виде настольного приложения.

Лицензирование и бизнес-модель с открытым исходным кодом

Стартап поддерживает библиотеки с открытым исходным кодом для Python, R и MATLAB, которые взаимодействуют с plotly.js. Компания также поддерживает веб-приложение для создания диаграмм и подключения их к базам данных (стыковочные библиотеки также распространяются с открытым исходным кодом).

Если вы используете локальную версию с открытым исходным кодом, в таком случае ограничений нет. Вы можете управлять развёртыванием Dash-приложений самостоятельно через платформы вроде Heroku или Digital Ocean.

Если вы ищите вдохновение для создания своих пользовательских интерфейсов в области технических вычислений, рекомендуем прочитать статью Брета Виктора

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

Источник

Введение в создание веб-приложений на Python

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

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

С помощью фреймворка вы можете реализовать большинство этих функций.

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

Зачем использовать фреймворки при создании веб-приложений?

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

Какие существуют фреймворки Python?

Django и Flask – самые популярные веб-фреймворки. Однако ознакомиться с другими фреймворками не помешает.

Вот некоторые из них:

создание приложения для сайта на питоне. python web development. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-python web development. картинка создание приложения для сайта на питоне. картинка python web development.

Django

Доступ к базе данных осуществляется через объектно-реляционное преобразование: вы определяете свои модели данных в Python, и Django начинает работать с реляционными системами управления базами данных (СУБД). Однако, если вам нужно, вы можете написать свои собственные SQL-запросы в Django. Также в этом фреймворке поддерживается маршрутизация URL-адресов.

Если вы хотите узнать о Django побольше, прочтите это.

Знаете ли вы, что такие сайты, как NASA, BitBucket и Pinterest были написаны с помощью Django?

Flask

Flask очень прост и интуитивно понятен:

Платформа поддерживает маршрутизацию URL-адресов, шаблоны (с Jinja2), управление сеансами и имеет некоторые фишки в области безопасности.

Если вы хотите узнать о Flask побольше, прочтите это.

Знаете ли вы, что изначально Flask был придуман как первоапрельская шутка?

Источник

Как специалисту по данным написать веб-приложение, используя простой Python

создание приложения для сайта на питоне. 1 vQmmP9BZH4gnb 5sb0QfNQ. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-1 vQmmP9BZH4gnb 5sb0QfNQ. картинка создание приложения для сайта на питоне. картинка 1 vQmmP9BZH4gnb 5sb0QfNQ.

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

Раньше для демонстрации проекта хватало хороших визуализаций или небольших PPT, однако с появлением таких инструментов для создания дашбордов, как RShiny и Dash, хорошему специалисту по данным стало необходимо разбираться в веб-фреймворках.

Веб-фреймворки трудно освоить. Я до сих пор путаюсь в HTML, CSS и Javascript, когда нужно создать даже что-то простое. И я уже не говорю о таком большом разнообразии способов выполнить одну и ту же задачу. Просто кошмар для специалистов по работе с данными, для которых веб-разработка — второстепенный навык.

Так что же, мы обречены изучать веб-фреймворки? Или звонить посреди ночи нашим друзьям-разработчикам с глупыми вопросами?

И вот здесь на помощь приходит Streamlit с возможностью создавать веб-приложения на Python.

Дзен Python: Простое лучше, чем сложное, и Streamlit предельно упрощает создание приложений.

Эта статья о том, как создавать приложения, поддерживающие проекты по науке о данных, используя Streamlit.

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

Установка

Устанавливаем Streamlit — просто запускаем команду:

pip install streamlit

Проверяем, что установка прошла успешно:

Эта команда выведет следующее сообщение на экран:

создание приложения для сайта на питоне. . создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-. картинка создание приложения для сайта на питоне. картинка .

Пройдите по локальному URL localhost:8501 в браузере, чтобы увидеть приложение Streamlit в действии. Разработчики предоставили несколько классных демо, с которыми можно поиграть. Прежде чем вернуться к коду, уделите приложению немного времени, чтобы почувствовать пользу инструментов.

создание приложения для сайта на питоне. 0*4zwTWH3oNOfCfMMm. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-0*4zwTWH3oNOfCfMMm. картинка создание приложения для сайта на питоне. картинка 0*4zwTWH3oNOfCfMMm.

Hello World в Streamlit

Цель Streamlit — упростить разработку приложений с помощью Python.

Давайте напишем простое приложение, чтобы проверить, справится ли Streamlit с задачей.

Начнем с приложения, которое назовем Hello World. Просто поместим код ниже в файл helloworld.py :

И запустим файл в терминале:

Это было очень просто. В приложении выше мы использовали две фичи Streamlit:

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

Виджеты Streamlit

Виджеты позволяют контролировать приложение. Лучше всего почитать документацию API, но я опишу некоторые особо интересные моменты.

1. Ползунок

Выше мы уже видели st.slider в действии. Его можно использовать с min_value, max_value и step для получения выходных данных в диапазоне.

2. Ввод текста

Это самый простой способ получить пользовательский ввод, будь то ввод URL или текста для анализа тональности. Виджету нужен только один лейбл для именования текстового поля:

Вот как выглядит приложение:

Подсказка: Можно просто заменить файл helloworld.py и обновить браузер. Я открываю и изменяю helloworld.py в редакторе Sublime text и вижу изменения в браузере рядом.

3. Чекбокс

Один вариант использования чекбокса — скрыть или показать определенную область в приложении. Другой — задать булевое значение в параметрах для функции. st.checkbox() принимает один аргумент — лейбл виджета.

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

4. SelectBox

Мы можем использовать st.selectbox для выбора из серии или списка. Обычный вариант использования — простой выпадающий список для выбора значений:

5. Множественное выделение

Создаем простое приложение

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

Сначала попробуем визуализировать наши футбольные данные: с помощью уже знакомых нам виджетов сделать это не составит труда.

Наше приложение выглядит так:

Это было просто. Но и выглядит несколько по-простецки. Может, добавить диаграммы?

Улучшения

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

1. Кэширование

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

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

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

Если Streamlit видит эти параметры впервые, он запускает функцию и сохраняет ее в локальный кэш.

Если параметры не изменятся при следующем вызове функции, Streamlit знает, что может вообще пропустить выполнение функции. Он просто использует результат из кэша.

2. Боковая панель

Для более аккуратного вида в зависимости от ваших предпочтений можно перенести виджеты в боковую панель, что-то вроде дашборда Rshiny. Это очень просто — добавляем st.sidebar в код виджета.

3. Markdown?

Я люблю писать в Markdown. Как по мне, так он не такой многословный, как HTML, и больше подходит для работы с данными. Итак, можно ли использовать Markdown с приложением Streamlit?

Да, конечно. Существует несколько способов сделать это. Мне лучшим кажется использование магических команд. Они позволяют писать markdown так же просто, как комментарии. Можно использовать команду st.markdown :

Заключение

Streamlit демократизировал полный процесс создания приложений, и невозможно его не порекомендовать.

В этой статье мы создали простое приложение, но возможности безграничны. Вот для примера генеративно-состязательная сеть обработки лиц с сайта streamlit, которая в которой есть те же виджеты и кэширование.

создание приложения для сайта на питоне. 0*98YM4P0ZGIZiOiBQ. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-0*98YM4P0ZGIZiOiBQ. картинка создание приложения для сайта на питоне. картинка 0*98YM4P0ZGIZiOiBQ.

Мне нравятся цвета и стили по умолчанию, используемые разработчиками. Мне они кажутся намного более комфортными, чем в Dash, который я использовал ранее. В приложениях Streamlit также можно включать аудио и видео.

Кроме того, Streamlit — это бесплатное приложение с открытым кодом, которое работает прямо из коробки.

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

Я не знаю, насколько хорошо streamlit работает в производственной среде, но для демонстрации небольших концептуальных проектов оно идеально.

Весь код рассмотренного приложения можно найти здесь.

Источник

Краткое руководство. Создание первого веб-приложения Python с помощью Visual Studio

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

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

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

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

создание приложения для сайта на питоне. python web. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-python web. картинка создание приложения для сайта на питоне. картинка python web.

Создание проекта

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

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

В верхней строке меню последовательно выберите Файл > Создать > Проект.

В диалоговом окне Новый проект введите в поле поиска в правом верхнем углу «Веб-проект Python», в списке по центру выберите Веб-проект, присвойте проекту имя, например HelloPython, и нажмите кнопку ОК.

создание приложения для сайта на питоне. quickstart python 00 web project. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 00 web project. картинка создание приложения для сайта на питоне. картинка quickstart python 00 web project.

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

создание приложения для сайта на питоне. installation python workload. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-installation python workload. картинка создание приложения для сайта на питоне. картинка installation python workload.

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

создание приложения для сайта на питоне. quickstart python 01 empty project. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 01 empty project. картинка создание приложения для сайта на питоне. картинка quickstart python 01 empty project.

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

На начальном экране выберите Создать новый проект.

В диалоговом окне Создать новый проект введите «Python веб» в поле поиска вверху, выберите Веб-проект в среднем списке и нажмите Далее:

создание приложения для сайта на питоне. quickstart python 00 web project 2019a. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 00 web project 2019a. картинка создание приложения для сайта на питоне. картинка quickstart python 00 web project 2019a.. Если вы не видите шаблоны проекта Python, запустите Visual Studio Installer, выберите Подробнее > Изменить. Выберите рабочую нагрузку Разработка на Python и выберите Изменить.

создание приложения для сайта на питоне. installation python workload. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-installation python workload. картинка создание приложения для сайта на питоне. картинка installation python workload.

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

создание приложения для сайта на питоне. quickstart python 00 web project 2019b. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 00 web project 2019b. картинка создание приложения для сайта на питоне. картинка quickstart python 00 web project 2019b.

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

создание приложения для сайта на питоне. quickstart python 01 empty project 2019. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 01 empty project 2019. картинка создание приложения для сайта на питоне. картинка quickstart python 01 empty project 2019.

Откройте Visual Studio 2022.

На начальном экране выберите Создать новый проект.

В диалоговом окне Создание проекта введите «Python web» в поле поиска вверху. Выберите Веб-проект из списка, а затем нажмите Далее:

создание приложения для сайта на питоне. python web project. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-python web project. картинка создание приложения для сайта на питоне. картинка python web project.

Если вы не видите шаблоны веб-проекта Python, выберите пункт Средства > Get Tools and Features (Получить средства и компоненты), чтобы запустить Visual Studio Installer. В Installer выберите рабочую нагрузку Разработка на Python, а в разделе Сведения об установке щелкните Веб-поддержка в Python. Затем нажмите кнопку Изменить.

В диалоговом окне Настроить новый проект введите «HelloPython» в качестве имени проекта, укажите расположение, а затем выберите Создать. Поле Имя решения автоматически обновится в соответствии с именем проекта.

создание приложения для сайта на питоне. configure project. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-configure project. картинка создание приложения для сайта на питоне. картинка configure project.

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

создание приложения для сайта на питоне. solution. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-solution. картинка создание приложения для сайта на питоне. картинка solution.

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

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

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

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

Ответ. Решение Visual Studio — это контейнер, который помогает управлять одним или несколькими связанными проектами в виде группы. В решении хранятся параметры конфигурации, которые не относятся к конкретному проекту. Проекты в решении также могут ссылаться друг на друга. Например, при запуске проекта приложения Python может автоматически создаваться второй проект, например расширение C++, используемое приложением Python.

Установка библиотеки Flask

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

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

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

создание приложения для сайта на питоне. quickstart python 02 default environment. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 02 default environment. картинка создание приложения для сайта на питоне. картинка quickstart python 02 default environment.

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

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

создание приложения для сайта на питоне. quickstart python 03 install package. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 03 install package. картинка создание приложения для сайта на питоне. картинка quickstart python 03 install package.

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

создание приложения для сайта на питоне. quickstart python 02 default environment 2019. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 02 default environment 2019. картинка создание приложения для сайта на питоне. картинка quickstart python 02 default environment 2019.

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

создание приложения для сайта на питоне. quickstart python 03 install package 2019. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 03 install package 2019. картинка создание приложения для сайта на питоне. картинка quickstart python 03 install package 2019.

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

создание приложения для сайта на питоне. python environment. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-python environment. картинка создание приложения для сайта на питоне. картинка python environment.

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

В поле поиска введите «flask». Если Flask отображается под полем поиска, этот шаг можно пропустить. В противном случае выберите Выполнить команду: pip install flask.

создание приложения для сайта на питоне. install flask. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-install flask. картинка создание приложения для сайта на питоне. картинка install flask.

Запрос на повышение прав отображается, если папка пакетов глобального окружения находится в защищенной области, например в папке C:\Program Files. Подтвердите запросы на права администратора. Следите за ходом выполнения в окне Вывод в Visual Studio.

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

создание приложения для сайта на питоне. quickstart python 04 package installed. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 04 package installed. картинка создание приложения для сайта на питоне. картинка quickstart python 04 package installed.

создание приложения для сайта на питоне. quickstart python 04 package installed 2019. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 04 package installed 2019. картинка создание приложения для сайта на питоне. картинка quickstart python 04 package installed 2019.

создание приложения для сайта на питоне. flask installed. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-flask installed. картинка создание приложения для сайта на питоне. картинка flask installed.

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

Вопрос. Где можно подробнее узнать о других доступных пакетах Python?

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

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

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

Щелкните правой кнопкой мыши в Обозревателе решений и выберите Добавить > Создать элемент.

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

Скопируйте следующий код и вставьте его в app.py:

Щелкните правой кнопкой мыши в Обозревателе решений и выберите Добавить > Создать элемент.

В появившемся диалоговом окне выберите Пустой. В качестве имени введите app.py, а затем нажмите кнопку Добавить. Файл автоматически откроется в редакторе кода Visual Studio.

Скопируйте следующий код и вставьте его в app.py:

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

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

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

Запуск приложения

В Обозревателе решений щелкните правой кнопкой мыши файл app.py, а затем в раскрывающемся меню выберите Задать как файл запуска. С помощью этой команды файл кода задается как запускаемый в Python при запуске приложения.

создание приложения для сайта на питоне. quickstart python 05 set as startup file. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 05 set as startup file. картинка создание приложения для сайта на питоне. картинка quickstart python 05 set as startup file.

создание приложения для сайта на питоне. quickstart python 05 set as startup file 2019. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-quickstart python 05 set as startup file 2019. картинка создание приложения для сайта на питоне. картинка quickstart python 05 set as startup file 2019.

создание приложения для сайта на питоне. set startup file. создание приложения для сайта на питоне фото. создание приложения для сайта на питоне-set startup file. картинка создание приложения для сайта на питоне. картинка set startup file.

Выберите пункт Отладка > Запустить без отладки или нажмите сочетание клавиш Ctrl+F5, чтобы сохранить изменения в файлах и запустить приложение.

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

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

Вопрос. В чем разница между командами «Запустить без отладки» и «Начать отладку»?

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

Команда Запустить без отладки запускает приложение напрямую, как если бы оно запускалось из командной строки без контекста отладки. Команда Запустить без отладки также автоматически запускает браузер и переходит по URL-адресу, указанному на вкладке Отладка свойств проекта.

Дальнейшие действия

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

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

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

Более подробно ознакомиться с возможностями Visual Studio можно по приведенным ниже ссылкам.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *