Brython 3.9 väljaanne, Python keele teostus veebibrauseritele

Avaldatud projekti väljalaskmine Brython 3.9 (Browser Python) on Python 3 programmeerimiskeele rakendus, mis võimaldab veebibrauseris töötamist, võimaldades Pythonit kasutada JavaScripti asemel veebiskripti kirjutamiseks. Projekti kood on kirjutatud Pythonis ja levitatakse BSD litsentsi all. Uus versioon paistab silma ühilduvuse tagamisega Python 3.9 ja standardteegi värskendamisega.

Ühendades teegid brython.js ja brython_stdlib.js, veebiarendaja saab kasutama kasutada Pythonit lehe kliendi logika määratlemiseks, rakendades Pythonit JavaScripti asemel. Python-koodi lisamiseks lehtedele kasutatakse märgendit mime-tüübiga „text/python”. Lubatakse nii koodi sisestamine lehele kui ka väliste skriptide laadimine (). Skriptist on täielik juurdepääs DOM elemendidele ja sündmustele.
Lisaks juurdepääsule Python standardteegile pakutakse eriteeke koosolekul osalemiseks DOM-i ja JavaScripti teekidega, nagu jQuery, D3, Highcharts ja Raphael. Toetatakse CSS-raamistike nagu Bootstrap3, LESS ja SASS kasutamist.

Python-koodi täitmine plokkidena <script> производится через предварительную компиляцию этого когда, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «<body onload="»brython()»">». На основе Python кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js pakub Python-koodi käitamiseks brauseris asm.js-i koostatud CPython tõlgendajat, ja Skulpt rakendab JavaScriptis tõlgendajat).

Enamik operatsioonide lõpptulemustest sisseehitatud Python-skriptides veebilehtedele on lähedane CPythoni jõudlusele. Viivitus tekib ainult kompileerimise etapis, kuid selle kõrvaldamiseks on pakutud eelnevalt JavaScriptiks koostatud koodi laadimise võimalust, mis kiirendab standardteegi laadimist (Brython pakub tööriistakomplekt Python moodulitele põhinevate JavaScripti teekide loomiseks).

<script type=»text/python»>

import time
import math

from browser 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()
else:
content.select_one('.navig_zone').html = "canvas is not supported"

</script>

Allikas: opennet.ru

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster