Все, что вам нужно знать о PyScript от Anaconda
http://pyscript.net/
Инженер Anaconda Фабио Плигер и автор проекта pyscript представил проект, который позволяет программистам на python писать скрипты на python, которые могут запускаться в браузере.
Об этом он пишет в своем последнем блоге;
Одной из основных причин, по которой я пришел в Anaconda семь с половиной лет назад, была приверженность компании сообществам data science и Python путем создания инструментов, которые позволяют людям делать больше с меньшими затратами.
Сегодня я рад объявить о новом проекте, над которым мы работаем в Anaconda и который, как мы надеемся, сделает еще один серьезный шаг к тому, чтобы сделать
TL;DR
PyScript – это фреймворк, основанный на проекте pyodide, который представляет собой порт CPython to Web Assembly (WASM)/Emscripten. Он позволяет пользователям создавать богатые Python-приложения в браузере, комбинируя Python и стандартный HTML.
PyScript стремится предоставить пользователям первоклассный язык программирования, который более выразителен, имеет последовательные правила стилизации и более прост в изучении.
Что такое Pyodide?
Pyodide позволяет устанавливать и запускать пакеты Python в браузере с помощью micropip.На PyPi поддерживается любой пакет чистого Python с колесом.
Многие пакеты с расширением C также были перенесены для использования в Pyodide.
Включены многие пакеты Python общего назначения, такие как regex, PyYAML и lxml, а также научные пакеты Python, такие как NumPy, pandas, SciPy, Matplotlib и scikit-learn.
Основные компоненты
https://www.anaconda.com/blog/pyscript-python-in-the-browser
Python в браузере: Позволяет загружать контент, размещать внешние файлы (это стало возможным благодаря проекту Pyodide, спасибо!) и размещать приложения без зависимости от конфигурации на стороне сервера.
Экосистема Python: Запуск многих популярных пакетов Python и научного стека (таких как numpy, pandas, scikit-learn и др.). Поддерживается любой пакет чистого Python с колесом, доступный на PyPi. Если ваш пакет недоступен, вам нужно открыть PR для проекта Pyodide.
Python с JavaScript: Двунаправленное взаимодействие между объектами и пространствами имен Python и Javascript
Управление окружением: Позволяет пользователям определять, какие пакеты и файлы должны быть включены для запуска кода страницы
<py-env>
- './static/wheels/travertino-0.1.3-py3-none-any.whl' - './static/wheels/toga_core-0.3.0.dev33-py3-none-any.whl' - './static/wheels/toga_web-0.3.0.dev33-py3-none-any.whl' - './static/wheels/freedom-0.0.1-py3-none-any.whl' </py-env>
Визуальная разработка приложений: Используйте легкодоступные курируемые компоненты пользовательского интерфейса, такие как кнопки, контейнеры, текстовые поля и т.д.
Гибкий фреймворк: Гибкая структура, которую можно использовать для создания и обмена новыми подключаемыми и расширяемыми компонентами непосредственно в Python.
Цели PyScript:
- Предложить чистый и простой API
- Поддержка стандартного HTML
- Расширять HTML для чтения пользовательских компонентов, которые являются авторитетными и надежными
- Предоставить подключаемую и расширяемую систему компонентов.
Попробуйте pyscript
Чтобы попробовать PyScript, импортируйте соответствующие файлы pyscript на вашу html-страницу:
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
После этого вы сможете использовать компоненты PyScript в вашей html-странице. В настоящее время PyScript реализует следующие элементы:
- :, который может быть использован для определения кода python, исполняемого на веб-странице. Сам элемент не отображается на странице и используется только для добавления логики.
- : создает компонент REPL, который отображается на странице как редактор кода и позволяет пользователям писать код, который может быть выполнен.
Настройка среды разработки
PyScript не требует никакой среды разработки, кроме веб-браузера. Мы рекомендуем использовать Chrome.
Если вы используете VSCode, расширение Live Server можно использовать для перезагрузки страницы по мере редактирования HTML-файла.
Создайте свой первый PyScript
Вот пример того, как PyScript говорит “Привет, мир!”.
Используя удобный для вас редактор, создайте новый файл hello.html в том же каталоге, где находятся файлы PyScript, JavaScript и CSS, и откройте его в веб-браузере.
В большинстве случаев HTML-файл можно открыть, дважды щелкнув по нему в проводнике файлов.
<html>
<head>
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
</head>
<body>
<py-script> print('Hello, World!') </py-script>
</body>
</html>
Примечательно использование тега в теле HTML. Именно здесь будет написан ваш Python-код. Мы рассмотрим каждый из восьми тегов PyScript в следующих разделах.
Первый опыт
Я попробовал несколько примеров после клонирования репозитория и обнаружил, что у них медленное время загрузки, что не является виной этого фреймворка, потому что это касается всех проектов WASM.
Я думаю, что он лучше всего подходит для разработки игр в веб-браузере или проектов визуализации данных/панелей.
PyScript только начинает свою работу, и их цель намного больше, чем то, что они показывают сейчас. Хотя он все еще нестабилен и ограничен, он действительно работает!