Tso tawm ntawm Brython 3.11, kev siv cov lus Python rau web browsers

Ib qhov kev tso tawm ntawm Brython 3.11 (Browser Python) qhov project tau nthuav tawm nrog kev siv Python 3 programming lus rau kev ua tiav ntawm lub vev xaib browser sab, tso cai siv Python es tsis txhob siv JavaScript los tsim cov ntawv sau rau hauv Web. Txoj haujlwm code yog sau hauv Python thiab muab faib raws li BSD daim ntawv tso cai.

Los ntawm suav nrog brython.js thiab brython_stdlib.js cov tsev qiv ntawv, tus tsim lub vev xaib tuaj yeem siv cov lus Python los txhais cov ntsiab lus ntawm lub xaib ntawm tus neeg siv khoom, siv Python es tsis txhob siv JavaScript. Txhawm rau suav nrog Python code ntawm nplooj ntawv, siv lub cim npe с mime-Ρ‚ΠΈΠΏΠΎΠΌ Β«text/pythonΒ». ДопускаСтся ΠΊΠ°ΠΊ встраиваниС ΠΊΠΎΠ΄Π° Π½Π° страницу, Ρ‚Π°ΠΊ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π²Π½Π΅ΡˆΠ½ΠΈΡ… скриптов (). Из скрипта прСдоставляСтся ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ ΠΊ элСмСнтам ΠΈ событиям DOM. Помимо доступа ΠΊ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Python ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ спСциализированныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для взаимодСйствия с DOM ΠΈ JavaScript-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ jQuery, D3, Highcharts ΠΈ Raphael. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ использованиС CSS-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² Bootstrap3, LESS ΠΈ SASS.

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

Tag nrho cov kev ua tau zoo ntawm kev ua haujlwm feem ntau hauv Python scripts embedded nyob rau hauv cov nplooj ntawv web yog ze rau ntawm CPython. Qhov kev ncua tsuas yog tshwm sim nyob rau theem muab tso ua ke, tab sis txhawm rau tshem tawm nws, muaj peev xwm thauj khoom ua ntej JavaScript code tau muab, uas yog siv los ua kom lub sijhawm thauj khoom ntawm lub tsev qiv ntawv txheem (Brython muab cov cuab yeej los tsim cov tsev qiv ntawv JavaScript raws li Python modules) .

Qhov kev tso tawm tshiab no yog qhov tseem ceeb rau kev muab kev sib raug zoo nrog CPython 3.11 thiab siv feem ntau ntawm cov yam ntxwv tshiab ntawm cov ceg no, suav nrog kev txhawb nqa rau pawg tshwj xeeb thiab "tsuas yog *" qhia, piav qhia txog cov teeb meem hauv cov lus kuaj mob, thiab txuas cov ntawv sau rau kev zam.

Tau qhov twg los: opennet.ru

Ntxiv ib saib