Brython 3.10 versiyasi, veb-brauzerlar uchun Python tilini amalga oshirish

Brython 3.10 (Browser Python) loyihasining versiyasi veb-brauzer tomonida bajarish uchun Python 3 dasturlash tilini amalga oshirish bilan taqdim etildi, bu Internet uchun skriptlarni ishlab chiqishda JavaScript o'rniga Python-dan foydalanish imkonini beradi. Loyiha kodi Python-da yozilgan va BSD litsenziyasi ostida tarqatiladi.

brython.js va brython_stdlib.js kutubxonalarini qo'shish orqali veb-ishlab chiquvchi JavaScript o'rniga Python-dan foydalanib, mijoz tomonida sayt mantig'ini aniqlash uchun Python tilidan foydalanishi mumkin. Sahifalarga Python kodini kiritish uchun tegdan foydalaning с mime-Ρ‚ΠΈΠΏΠΎΠΌ Β«text/pythonΒ». ДопускаСтся ΠΊΠ°ΠΊ встраиваниС ΠΊΠΎΠ΄Π° Π½Π° страницу, Ρ‚Π°ΠΊ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π²Π½Π΅ΡˆΠ½ΠΈΡ… скриптов (). Из скрипта прСдоставляСтся ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ ΠΊ элСмСнтам ΠΈ событиям DOM. Помимо доступа ΠΊ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Python ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ спСциализированныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для взаимодСйствия с DOM ΠΈ JavaScript-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ jQuery, D3, Highcharts ΠΈ Raphael. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ использованиС CSS-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² Bootstrap3, LESS ΠΈ SASS.

Bloklardan Python kodini bajarish производится Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ этого ΠΊΠΎΠ΄Π°, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ Brython послС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страницы. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ инициируСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ brython(), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‡Π΅Ρ€Π΅Π· Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ «». На основС Python-ΠΊΠΎΠ΄Π° формируСтся прСдставлСниС Π½Π° языкС JavaScript, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Ρ‚Π΅ΠΌ выполняСтся ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌ JavaScript-Π΄Π²ΠΈΠΆΠΊΠΎΠΌ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (для сравнСния, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ PyPy.js ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ для выполнСния Python-ΠΊΠΎΠ΄Π° Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ скомпилированный Π² asm.js ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ CPython, Π° Skulpt Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Π½Π° JavaScript).

Veb-sahifalarga o'rnatilgan Python skriptlarida ko'pgina operatsiyalarning umumiy ishlashi CPython-ga yaqin. Kechikish faqat kompilyatsiya bosqichida sodir bo'ladi, lekin uni bartaraf etish uchun standart kutubxonani yuklashni tezlashtirish uchun foydalaniladigan oldindan kompilyatsiya qilingan JavaScript kodini yuklash imkoniyati taqdim etiladi (Brython Python modullari asosida JavaScript kutubxonalarini yaratish uchun asboblar to'plamini taqdim etadi). .

Yangi versiyada Python 3.10 bilan moslik, shu jumladan naqsh moslashtirish (moslik/xodisa) operatorlarini qoβ€˜llab-quvvatlash mavjud. Yangi versiya, shuningdek, Python tili uchun mavhum sintaksis daraxtining (AST, Abstract Syntax Tree) dastlabki tatbiqini taklif qiladi, undan keyin universal ASTdan JavaScript kodini yaratish uchun foydalanish mumkin.

Manba: opennet.ru

a Izoh qo'shish