Brython 3.15.0(浏览器 Python)现已发布。它实现了适用于 Web 浏览器的 Python 3 编程语言,允许您使用 Python 而非 JavaScript 进行 Web 脚本编写。Brython 3.15 兼容 CPython 3.15,并实现了该版本的大部分新特性,包括延迟模块导入、frozendict 和 sentinel 类型,以及用于列表推导式解包的“*”和“**”运算符。该项目的代码使用 Python 编写,并以 BSD 许可证发布。
通过包含 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-движком браузера.
嵌入网页的 Python 脚本中大多数操作的整体性能接近 CPython。唯一的延迟出现在编译阶段,但可以通过加载预编译的 JavaScript 代码来消除,这可以加快标准库的加载速度(Brython 提供了基于 Python 模块创建 JavaScript 库的工具)。
来源: opennet.ru
