เจฌเฉเจฐเจพเจ‡เจฅเจจ 3.9 เจฆเฉ€ เจฐเจฟเจฒเฉ€เจœเจผ, เจตเฉˆเฉฑเจฌ เจฌเฉเจฐเจพเจŠเจœเจผเจฐเจพเจ‚ เจฒเจˆ เจชเจพเจˆเจฅเจจ เจญเจพเจธเจผเจพ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ

เจชเฉเจฐเจ•เจพเจธเจผเจฟเจค เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฐเฉ€เจฒเฉ€เจœเจผ เจฌเฉเจฐเจพเจ‡เจฅเจจ 3.9 (เจฌเฉเจฐเจพเจŠเจœเจผเจฐ เจชเจพเจˆเจฅเจจ) เจตเฉˆเฉฑเจฌ เจฌเฉเจฐเจพเจŠเจœเจผเจฐ เจธเจพเจˆเจก 'เจคเฉ‡ เจเจ—เจœเจผเฉ€เจ•เจฟเจŠเจธเจผเจจ เจฒเจˆ เจชเจพเจˆเจฅเจจ 3 เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจฆเฉ‡ เจจเจพเจฒ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจตเฉˆเฉฑเจฌ เจฒเจˆ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจตเจฟเจ•เจธเจค เจ•เจฐเจจ เจฒเจˆ JavaScript เจฆเฉ€ เจฌเจœเจพเจ Python เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจ•เฉ‹เจก เจชเจพเจˆเจฅเจจ เจตเจฟเฉฑเจš เจฒเจฟเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจ…เจคเฉ‡ เจฆเฉเจ†เจฐเจพ เจตเฉฐเจกเจฟเจ† BSD เจฒเจพเจ‡เจธเฉฐเจธ เจฆเฉ‡ เจ…เจงเฉ€เจจ. เจจเจตเฉ€เจ‚ เจฐเฉ€เจฒเฉ€เจœเจผ เจ‡เจธเจฆเฉ€ เจ…เจจเฉเจ•เฉ‚เจฒเจคเจพ เจฒเจˆ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ เจชเจพเจ‡เจฅเจจ 3.9 เจ…เจคเฉ‡ เจฎเจฟเจ†เจฐเฉ€ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€ เจจเฉ‚เฉฐ เจ…เฉฑเจชเจกเฉ‡เจŸ เจ•เจฐเจจเจพเฅค

เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ•เจจเฉˆเจ•เจŸ เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆ brython.js ะธ brython_stdlib.js, เจ‡เฉฑเจ• เจตเฉˆเฉฑเจฌ เจกเจฟเจตเฉˆเจฒเจชเจฐ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจตเจฐเจคเฉ‹เจ‚ เจœเจพเจตเจพ เจธเจ•เฉเจฐเจฟเจชเจŸ เจฆเฉ€ เจฌเจœเจพเจ เจชเจพเจˆเจฅเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจ•เจฒเจพเจ‡เฉฐเจŸ เจธเจพเจˆเจก 'เจคเฉ‡ เจธเจพเจˆเจŸ เจฆเฉ‡ เจคเจฐเจ• เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจจ เจฒเจˆ เจชเจพเจˆเจฅเจจ เจญเจพเจธเจผเจพเฅค เจชเฉฐเจจเจฟเจ†เจ‚ 'เจคเฉ‡ เจชเจพเจˆเจฅเจจ เจ•เฉ‹เจก เจธเจผเจพเจฎเจฒ เจ•เจฐเจจ เจฒเจˆ, เจŸเฉˆเจ— เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเฉ‹ ั mime-ั‚ะธะฟะพะผ ยซtext/pythonยป. ะ”ะพะฟัƒัะบะฐะตั‚ัั ะบะฐะบ ะฒัั‚ั€ะฐะธะฒะฐะฝะธะต ะบะพะดะฐ ะฝะฐ ัั‚ั€ะฐะฝะธั†ัƒ, ั‚ะฐะบ ะธ ะทะฐะณั€ัƒะทะบะฐ ะฒะฝะตัˆะฝะธั… ัะบั€ะธะฟั‚ะพะฒ (). ะ˜ะท ัะบั€ะธะฟั‚ะฐ ะฟั€ะตะดะพัั‚ะฐะฒะปัะตั‚ัั ะฟะพะปะฝั‹ะน ะดะพัั‚ัƒะฟ ะบ ัะปะตะผะตะฝั‚ะฐะผ ะธ ัะพะฑั‹ั‚ะธัะผ DOM.
เจชเจพเจˆเจฅเจจ เจธเจŸเฉˆเจ‚เจกเจฐเจก เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ‡เจน DOM เจ…เจคเฉ‡ JavaScript เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ jQuery, D3, Highcharts, เจ…เจคเฉ‡ Raphael เจจเจพเจฒ เจ‡เฉฐเจŸเจฐเฉˆเจ•เจŸ เจ•เจฐเจจ เจฒเจˆ เจตเจฟเจธเจผเฉ‡เจธเจผ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆเฅค CSS เจซเจฐเฉ‡เจฎเจตเจฐเจ• Bootstrap3, LESS เจ…เจคเฉ‡ SASS เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจธเจฎเจฐเจฅเจฟเจค เจนเฉˆเฅค

เจฌเจฒเจพเจ•เจพเจ‚ เจคเฉ‹เจ‚ เจชเจพเจˆเจฅเจจ เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃเจพ ะฟั€ะพะธะทะฒะพะดะธั‚ัั ั‡ะตั€ะตะท ะฟั€ะตะดะฒะฐั€ะธั‚ะตะปัŒะฝัƒัŽ ะบะพะผะฟะธะปัั†ะธัŽ ัั‚ะพะณะพ ะบะพะณะดะฐ, ะฒั‹ะฟะพะปะฝัะตะผัƒัŽ ะพะฑั€ะฐะฑะพั‚ั‡ะธะบะพะผ Brython ะฟะพัะปะต ะทะฐะณั€ัƒะทะบะธ ัั‚ั€ะฐะฝะธั†ั‹. ะšะพะผะฟะธะปัั†ะธั ะธะฝะธั†ะธะธั€ัƒะตั‚ัั ะฟั€ะธ ะฟะพะผะพั‰ะธ ะฒั‹ะทะพะฒะฐ ั„ัƒะฝะบั†ะธะธ brython(), ะฝะฐะฟั€ะธะผะตั€ ั‡ะตั€ะตะท ะดะพะฑะฐะฒะปะตะฝะธะต ยซยป. ะะฐ ะพัะฝะพะฒะต Python ะบะพะดะฐ ั„ะพั€ะผะธั€ัƒะตั‚ัั ะฟั€ะตะดัั‚ะฐะฒะปะตะฝะธะต ะฝะฐ ัะทั‹ะบะต JavaScript, ะบะพั‚ะพั€ะพะต ะทะฐั‚ะตะผ ะฒั‹ะฟะพะปะฝัะตั‚ัั ัˆั‚ะฐั‚ะฝั‹ะผ JavaScript-ะดะฒะธะถะบะพะผ ะฑั€ะฐัƒะทะตั€ะฐ (ะดะปั ัั€ะฐะฒะฝะตะฝะธั, ะฟั€ะพะตะบั‚ PyPy.js เจฌเจฐเจพเจŠเจœเจผเจฐ เจตเจฟเฉฑเจš เจชเจพเจˆเจฅเจจ เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฒเจˆ asm.js เจตเจฟเฉฑเจš เจ•เฉฐเจชเจพเจ‡เจฒ เจ•เฉ€เจคเฉ‡ เจ‡เฉฑเจ• CPython เจฆเฉเจญเจพเจธเจผเฉ€เจ เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจธเจ•เจฒเจชเจŸ JavaScript เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฆเฉเจญเจพเจธเจผเฉ€เจ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆ)เฅค

เจตเฉˆเฉฑเจฌ เจชเฉฐเจจเจฟเจ†เจ‚ เจตเจฟเฉฑเจš เจเจฎเจฌเฉ‡เจก เจชเจพเจˆเจฅเจจ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจตเจฟเฉฑเจš เจœเจผเจฟเจ†เจฆเจพเจคเจฐ เจ“เจชเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจธเจฎเฉเฉฑเจšเฉ€ เจ•เจพเจฐเจ—เฉเจœเจผเจพเจฐเฉ€ เจฌเฉฐเจฆ เจ•เจฐเฉ‹ CPython เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจฒเจˆ. เจฆเฉ‡เจฐเฉ€ เจธเจฟเจฐเจซ เจธเฉฐเจ•เจฒเจจ เจชเฉœเจพเจ… 'เจคเฉ‡ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ, เจชเจฐ เจ‡เจธ เจจเฉ‚เฉฐ เจ–เจคเจฎ เจ•เจฐเจจ เจฒเจˆ, เจชเจนเจฟเจฒเจพเจ‚ เจคเฉ‹เจ‚ เจ•เฉฐเจชเจพเจˆเจฒ เจ•เฉ€เจคเฉ‡ เจœเจพเจตเจพ เจธเจ•เฉเจฐเจฟเจชเจŸ เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจฒเฉ‹เจก เจ•เจฐเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ เจชเฉเจฐเจฆเจพเจจ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจธเจŸเฉˆเจ‚เจกเจฐเจก เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€ (เจฌเฉเจฐเจพเจ‡เจฅเจจ) เจฆเฉ€ เจฒเฉ‹เจก เจจเฉ‚เฉฐ เจคเฉ‡เจœเจผ เจ•เจฐเจจ เจฒเจˆ เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ. เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆ เจธเฉฐเจฆ เจชเจพเจˆเจฅเจจ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ JavaScript เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ)เฅค

เจ†เจฏเจพเจค เจฆเจพ เจธเจฎเจพเจ‚
เจ†เจฏเจพเจค เจ—เจฃเจฟเจค

เจฌเฉเจฐเจพเจŠเจœเจผเจฐ เจ†เจฏเจพเจค เจฆเจธเจคเจพเจตเฉ‡เจœเจผ เจคเฉ‹เจ‚
browser.timer เจ†เจฏเจพเจค เจ•เจฐเฉ‹

เจธเจฎเฉฑเจ—เจฐเฉ€ = เจฆเจธเจคเจพเจตเฉ‡เจœเจผ["เจธเจฎเฉฑเจ—เจฐเฉ€"]

...

canvas = content.select_one(โ€œ.clockโ€)

if hasattr(canvas, 'getContext'):
ctx = canvas.getContext("2d")

browser.timer.set_interval(set_clock, 100)
show_hours()
เจนเฉ‹เจฐ:
content.select_one('.navig_zone').html = "เจ•เฉˆเจจเจตเจธ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉ€เจ‚ เจนเฉˆ"

เจธเจฐเฉ‹เจค: opennet.ru

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹