rilascio del progetto (Python per Browser) con implementazione del linguaggio di programmazione Python 3 per l'esecuzione lato client nel web browser, consentendo di utilizzare Python invece di JavaScript per sviluppare script per il Web. Il codice del progetto è scritto in Python ed è sotto licenza BSD. Il nuovo rilascio è notevole per la garanzia di compatibilità con e per l'aggiornamento della libreria standard.
Collegando le librerie e , il web developer può il linguaggio Python per definire la logica del sito lato client, applicando Python invece di JavaScript. Per includere codice Python nelle pagine, si utilizza il tag con il tipo MIME "text/python". Sono consentite sia l'integrazione del codice nella pagina, sia il caricamento di script esterni (). Dallo script, si ha accesso completo agli elementi e agli eventi del DOM.
Oltre all'accesso alla libreria standard di Python, sono disponibili librerie specializzate per interagire con il DOM e le librerie JavaScript, come jQuery, D3, Highcharts e Raphael. È supportato l'uso di framework CSS come Bootstrap3, LESS e SASS.
Esecuzione del codice Python da blocchi <script> производится через предварительную компиляцию этого когда, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «<body onload="»brython()»">». На основе Python кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект offre un interpréteur CPython compilé en asm.js pour exécuter du code Python dans le navigateur, ainsi que qui implémente un interpréteur en JavaScript).
La performance finale de la plupart des opérations dans les scripts Python intégrés aux pages web de la performance de CPython. Un retard se produit uniquement lors de l'étape de compilation, mais une option permet de charger du code déjà compilé en JavaScript, utilisée pour accélérer le chargement de la bibliothèque standard (Brython pour créer des bibliothèques JavaScript basées sur des modules Python).
<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>
Fonte: opennet.ru
