Python 已可在瀏覽器端運(yùn)行,來搶前端飯碗?

知名 Python 發(fā)行版 Anaconda 開發(fā)商近日宣布了可在瀏覽器端運(yùn)行的 Python —— PyScript。



根據(jù)官方的介紹,PyScript 是一個(gè)開發(fā)框架,為開發(fā)者提供了在標(biāo)準(zhǔn) HTML 中嵌入編寫 Python 代碼的能力、使用 Python 調(diào)用 JavaScript 函數(shù)庫,以及創(chuàng)建 Python Web 應(yīng)用。
PyScript 旨在提供“一等公民(first-class)”的編程語言,它具有一致的風(fēng)格化規(guī)則、更具表現(xiàn)力且更易于學(xué)習(xí)。

PyScript 示例代碼

<py-script>
"Hello World"
</py-script>
<py-script src="/my_own_file.py"></py-script>
<py-env>
- bokeh
- numpy
- paths:
  - /utils.py
  </py-env>

PyScript 核心特性

Python in the browser:啟用 drop-in content、外部文件托管(基于 Pyodide 項(xiàng)目),以及不依賴服務(wù)器端配置的應(yīng)用程序托管
Python 生態(tài):提供流行的 Python 和科學(xué)計(jì)算軟件包(例如 numpy, pandas, scikit-learn 等)
Python with JavaScript:在 Python 和 JavaScript 對象和命名空間之間進(jìn)行雙向通信
環(huán)境管理:開發(fā)者可定義要引入哪些包和文件,以便頁面代碼的運(yùn)行
可視化應(yīng)用開發(fā):開發(fā)者可使用現(xiàn)成的 UI 組件,如按鈕、容器、文本框等
靈活的框架:開發(fā)者可以利用它在 Python 中直接創(chuàng)建和分享新的可插拔和可擴(kuò)展的組件
PyScript 目標(biāo)

提供干凈簡單的 API
支持標(biāo)準(zhǔn) HTML
擴(kuò)展 HTML 以讀取穩(wěn)定且可靠的自定義組件
提供可插拔、可擴(kuò)展的組件系統(tǒng)
PyScript 基于 Pyodide 構(gòu)建,Pyodide 由編譯成 WebAssembly 的 CPython 3.8 解釋器組成,允許在網(wǎng)頁瀏覽器中運(yùn)行 Python。Pyodide 可以安裝來自 PyPi 的任何 Python 包。

Pyodide 還包括一個(gè)外部函數(shù)接口,可以將 Python 包暴露給 JavaScript,并將瀏覽器 UI,包括 DOM,暴露給 Python。



關(guān)于 PyScript 運(yùn)行原理的更多信息查看:https://engineering.anaconda.com/2022/04/welcome-pyscript.html

目前 PyScript 處于 alpha 測試階段,下載和安裝地址:https://pyscript.net/

作者:局長
來源:OSC開源社區(qū)

作者:局長


歡迎關(guān)注微信公眾號 :前端開發(fā)愛好者


添加好友備注【進(jìn)階學(xué)習(xí)】拉你進(jìn)技術(shù)交流群