Ukukhutshwa kweBrython 3.10, ukuphunyezwa kolwimi lwePython kwizikhangeli zewebhu

Ukukhutshwa kweprojekthi yeBrython 3.10 (iPython yeBrowser) inikezelwe ngokuphunyezwa kolwimi lwenkqubo yePython 3 ukuze luphunyezwe kwicala lomkhangeli zincwadi wewebhu, okuvumela ukusetyenziswa kwePython endaweni yeJavaScript ukuphuhlisa izikripthi zeWebhu. Ikhowudi yeprojekthi ibhalwe kwiPython kwaye isasazwe phantsi kwelayisensi ye-BSD.

Ngokuquka iilayibrari ze-brython.js kunye ne-brython_stdlib.js, umphuhlisi wewebhu unokusebenzisa ulwimi lwePython ukuchaza ingqiqo yesayithi kwicala lomxhasi, esebenzisa iPython endaweni yeJavaScript. Ukubandakanya ikhowudi yePython kumaphepha, sebenzisa ithegi с mime-Ρ‚ΠΈΠΏΠΎΠΌ Β«text/pythonΒ». ДопускаСтся ΠΊΠ°ΠΊ встраиваниС ΠΊΠΎΠ΄Π° Π½Π° страницу, Ρ‚Π°ΠΊ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π²Π½Π΅ΡˆΠ½ΠΈΡ… скриптов (). Из скрипта прСдоставляСтся ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ ΠΊ элСмСнтам ΠΈ событиям DOM. Помимо доступа ΠΊ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Python ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ спСциализированныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для взаимодСйствия с DOM ΠΈ JavaScript-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ jQuery, D3, Highcharts ΠΈ Raphael. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ использованиС CSS-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² Bootstrap3, LESS ΠΈ SASS.

Ukusetyenziswa kwekhowudi yePython ukusuka iibhloko zenziwa ngokuqulunqwa kwangaphambili kwale khowudi, eyenziwa yinjini yeBrython emva kokuba iphepha lilayishiwe. Uqokelelo luqalwa ngokubiza brython() umsebenzi, umzekelo ngokongeza "". Ngokusekelwe kwikhowudi yePython, ukumelwa kwiJavaScript kuveliswa, emva koko kwenziwa yinjini yeJavaScript esemgangathweni yesikhangeli (uthelekiso, iprojekthi yePyPy.js inikezela ngetoliki yeCPython ehlanganiswe kwi-asm.js ukwenza ikhowudi yePython kwisikhangeli. , kwaye iSkulpt yenza itoliki kwiJavaScript) .

Ukusebenza kokugqibela kwemisebenzi emininzi kwimibhalo yePython efakwe kumaphepha ewebhu isondele ekusebenzeni kweCPython. Ukulibaziseka kwenzeka kuphela kwinqanaba lokudibanisa, kodwa ukuyiphelisa, ukukwazi ukulayisha ikhowudi yeJavaScript ehlanganiswe kwangaphambili inikezelwe, esetyenziselwa ukukhawulezisa ukulayishwa kwelayibrari eqhelekileyo (iBrython ibonelela ngezixhobo zokwenza iilayibrari zeJavaScript ezisekelwe kwiimodyuli zePython. ).

Ukukhutshwa okutsha kuhambelana nokuhambelana nePython 3.10, kuquka nenkxaso yokulinganisa ipateni (umdlalo / ityala) abaqhubi. Inguqulelo entsha ikwabonelela ngokuphunyezwa kokuqala komthi we-syntax we-abstract (AST, Abstract Syntax Tree) yolwimi lwePython, olunokuthi emva koko lusetyenziswe ukuvelisa ikhowudi yeJavaScript kwi-AST yendawo yonke.

umthombo: opennet.ru

Yongeza izimvo