半年前,知名 Python 發(fā)行版 Anaconda 開發(fā)商推出了PyScript—— 一款支持在瀏覽器中創(chuàng)建 Python 應用程序的框架。PyScript 基于Pyodide構(gòu)建,Pyodide 由編譯成 WebAssembly 的 CPython 3.8 解釋器組成,允許在網(wǎng)頁瀏覽器中運行 Python。Pyodide 可以安裝來自 PyPi 的任何 Python 包。Pyodide 還包括一個外部函數(shù)接口,可以將 Python 包暴露給 JavaScript,并將瀏覽器 UI,包括 DOM,暴露給 Python。
Anaconda 表示,為了讓 PyScript 取得成功,他們必須對項目本身及其核心技術(shù)依賴進行戰(zhàn)略性投資,例如 WebAssembly (Wasm) 和 Pyodide 開源項目(PyScript 的首選 runtime)。 基于上述目標,Anaconda 在過去的半年里一直在積極改進 PyScript 的技術(shù)基礎(chǔ)設(shè)施,并在近日宣布加入了字節(jié)碼聯(lián)盟 (Bytecode Alliance),成為正式投票成員,希望幫助改進 Wasm 和 WASI 的標準。
Bytecode Alliance(字節(jié)碼聯(lián)盟)由 Mozilla、Fastly、Intel 與 Red Hat 聯(lián)合成立,是一個推動 WebAssembly 標準化的組織,該聯(lián)盟旨在通過協(xié)作實施標準和提出新標準,以完善 WebAssembly 在瀏覽器之外的生態(tài)。目前正在積極推動 WASI (WebAssembly System Interface),使 WebAssembly 能夠安全地訪問文件、網(wǎng)絡和內(nèi)存等系統(tǒng)資源。
在 Anaconda 看來,Wasm 對于 PyScript 起著至關(guān)重要的作用。類似的,WASI 在 Python 生態(tài)的 runtime 和模塊中也扮演著至關(guān)重要的角色。他們希望與聯(lián)盟合作共同推進這些標準。數(shù)據(jù)科學需要在任何地方都能運行 workload,比如本地 Python 環(huán)境、瀏覽器和云中 —— 這種可移植性是計算的未來。除了加入字節(jié)碼聯(lián)盟,Anaconda 也在大力支持 PyScript 依賴的核心開源項目 Pyodide,比如為其上游貢獻代碼,以及支持正在進行的開發(fā)工作。他們認為Pyodide 的成功就是 PyScript 的成功,雖然有許多項目都實現(xiàn)了將 Python 引入瀏覽器,但 Pyodide 在彌補跨語言代理、打包和模塊支持方面的開發(fā)差距方面做得非常出色。而且Pyodide 在可預見的未來將會是 PyScript 的默認 runtime。
Anaconda 希望把它作為一個重要的依賴關(guān)系來支持,并充分認識到它為 PyScript 帶來的價值。雖然 Anaconda “押注” Pyodide,但同時也在積極嘗試新的 runtime。最近他們展示了基于 MicroPython 的 PyScript 技術(shù)預覽版。
Anaconda 表示,MicroPython 非常適合在缺少操作系統(tǒng)和資源有限的受限環(huán)境中運行。當他們在默認配置中將 MicroPython 應用到 Wasm 時,出現(xiàn)了令人興奮的結(jié)果:這個新的 runtime 總大小僅為 303KB,可即時加載并在不到 100 毫秒的時間內(nèi)開始執(zhí)行 MicroPython 邏輯。
Anaconda 認為 MicroPython 也對 PyScript 發(fā)揮了重要作用,尤其是在許多加載性能存在問題的開發(fā)場景中。因為 PyScript 可通過配置來支持多種 runtime,所以開發(fā)者可根據(jù)場景選擇最適合的方案。
-
瀏覽器
+關(guān)注
關(guān)注
1文章
1035瀏覽量
35534 -
python
+關(guān)注
關(guān)注
56文章
4807瀏覽量
85038
原文標題:“可在瀏覽器端運行的Python”再發(fā)力
文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
E2000 Speedometer測試瀏覽器性能
AWTK 最新動態(tài):支持瀏覽器控件
![AWTK 最新動態(tài):支持<b class='flag-5'>瀏覽器</b>控件](https://file.elecfans.com/web2/M00/50/DA/pYYBAGLH6TyAB71EAAAPQ7KgtYA038.png)
寫一個Chrome瀏覽器插件
![寫一個Chrome<b class='flag-5'>瀏覽器</b>插件](https://file1.elecfans.com//web2/M00/0C/BE/wKgaomc7BPCAMqkPAAEGcp5T_Z4361.png)
![](https://file1.elecfans.com/web2/M00/05/31/wKgaombNFN2ATwRhAAMx7bUXWjo012.jpg)
不只是前端,后端、產(chǎn)品和測試也需要了解的瀏覽器知識(二)
![不只是前端,后端、產(chǎn)品和測試也需要了解的<b class='flag-5'>瀏覽器</b>知識(二)](https://file1.elecfans.com//web2/M00/02/02/wKgZoma5rGWAFdf0AAIbzLRvuBs118.png)
不只是前端,后端、產(chǎn)品和測試也需要了解的瀏覽器知識
![不只是前端,后端、產(chǎn)品和測試也需要了解的<b class='flag-5'>瀏覽器</b>知識](https://file1.elecfans.com//web2/M00/F6/A1/wKgZomaCfvOAdTpvAAU1WMKtFQ4337.png)
如何用python調(diào)用瀏覽器的視頻?
Opera瀏覽器引領(lǐng)潮流,全球首接端側(cè)AI大模型
蘋果測試版Safari瀏覽器改進,包括界面優(yōu)化、內(nèi)容攔截和智能功能
微軟Edge瀏覽器新增文本編輯功能:引入Compose和數(shù)字書寫功能
谷歌Chrome瀏覽器短暫模式測試,用戶可點擊鏈接運行
Edge瀏覽器關(guān)閉Microsoft Rewards擴展原因揭曉
Windows 10與11用戶默認安裝Microsoft Edge瀏覽器更新
鴻蒙實戰(zhàn)開發(fā):【瀏覽器制作】
![鴻蒙實戰(zhàn)開發(fā):【<b class='flag-5'>瀏覽器</b>制作】](https://file1.elecfans.com/web2/M00/C5/02/wKgZomX5WRmAAoBBAAcBIdamgcg194.png)
評論