Rilaxx ta' Brython 3.9, implimentazzjonijiet tal-lingwa Python għall-web browsers

ippubblikat rilaxx tal-proġett Brython 3.9 (Browser Python) b'implimentazzjoni tal-lingwa ta 'programmar Python 3 għall-eżekuzzjoni fuq in-naħa tal-web browser, li tippermettilek tuża Python minflok JavaScript biex tiżviluppa skripts għall-Web. Il-kodiċi tal-proġett huwa miktub f'Python u imqassma minn taħt liċenzja BSD. Ir-rilaxx il-ġdid huwa notevoli għall-kompatibilità tiegħu ma ' python 3.9 u l-aġġornament tal-librerija standard.

Konnessjoni tal-libreriji brython.js и brython_stdlib.js, żviluppatur tal-web jista użu Lingwa Python biex tiddefinixxi l-loġika tas-sit fuq in-naħa tal-klijent, billi tuża Python minflok JavaScript. Biex tinkludi kodiċi Python fil-paġni, uża t-tikketta с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM.
Minbarra l-aċċess għal-librerija standard Python, joffri libreriji speċjalizzati għall-interazzjoni mal-libreriji DOM u JavaScript bħal jQuery, D3, Highcharts u Raphael. L-użu tal-oqfsa CSS Bootstrap3, LESS u SASS huwa appoġġjat.

L-eżekuzzjoni tal-Kodiċi Python minn Blokki производится через предварительную компиляцию этого когда, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js joffri interpretu CPython miġbur f'asm.js għall-eżekuzzjoni tal-kodiċi Python fil-browser, u Skulpt jimplimenta interpretu fil-JavaScript).

Prestazzjoni ġenerali tal-biċċa l-kbira tal-operazzjonijiet fi skripts Python inkorporati fil-paġni tal-web qrib għall-prestazzjoni CPython. Id-dewmien iseħħ biss fl-istadju tal-kumpilazzjoni, iżda biex jiġi eliminat, hija pprovduta l-abbiltà li tgħabbi kodiċi JavaScript miġbur minn qabel, li jintuża biex iħaffef it-tagħbija tal-librerija standard (Brython tipprovdi għodod biex jinħolqu libreriji JavaScript bbażati fuq moduli Python).

ħin ta 'importazzjoni
importazzjoni matematika

mid-dokument tal-importazzjoni tal-brawżer
importazzjoni browser.timer

kontenut = dokument["kontenut"]

...

kanvas = content.select_one (".clock")

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

browser.timer.set_interval(set_clock, 100)
show_hours()
inkella:
content.select_one('.navig_zone').html = "kanvas mhux appoġġjat"

Sors: opennet.ru

Żid kumment