Випуск Brython 3.9, реалізації мови Python для web-браузерів

Опубліковано реліз проекту Brython 3.9 (Browser Python) з реалізацією мови програмування Python 3 для виконання на стороні web-браузера, що дозволяє використовувати Python замість JavaScript для створення скриптів для Web. Код проекту написаний мовою Python та поширюється під ліцензією BSD. Новий випуск примітний забезпеченням сумісності з Python 3.9 та оновленням стандартної бібліотеки.

Підключивши бібліотеки brython.js и brython_stdlib.js, web-розробник може використовувати мова Python для визначення логіки роботи сайту на стороні клієнта, використовуючи Python замість JavaScript. Для включення Python-коду на сторінки використовується тег с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM.
Окрім доступу до стандартної бібліотеки Python пропонуються спеціалізовані бібліотеки для взаємодії з DOM та JavaScript-бібліотеками, такими як jQuery, D3, Highcharts та Raphael. Підтримується використання CSS-фреймворків Bootstrap3, LESS та SASS.

Виконання Python-коду з блоків производится через предварительную компиляцию этого когда, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js пропонує для виконання Python-коду в браузері скомпільований в asm.js інтерпретатор CPython, а Скульпт реалізує інтерпретатор JavaScript).

Підсумкова продуктивність більшості операцій у Python-сценаріях, що вбудовуються в web-сторінки близька до продуктивності CPython. Затримка виникає лише на етапі компіляції, але для її усунення надається можливість завантаження попередньо скомпілюваного JavaScript коду, яка застосовується для прискорення завантаження стандартної бібліотеки (Brython надає інструментарій для створення JavaScript-бібліотек на основі модулів Python).

час імпорту
імпортувати математику

від браузера import document
import browser.timer

content = document[«content»]

...

canvas = content.select_one(".clock")

if hasattr(canvas, 'getContext'):
ctx = canvas.getContext("2d")

browser.timer.set_interval(set_clock, 100)
show_hours()
ще:
content.select_one('.navig_zone').html = "canvas is not supported"

Джерело: opennet.ru

Додати коментар або відгук