最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于python詳解PyScript到底是什么

 更新時間:2022年06月13日 16:53:46   作者:??Python編程學習圈????  
這篇文章主要介紹了基于python詳解PyScript到底是什么?文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值需要的朋友可以參考一下下面文章內(nèi)容

前言:

最近 Anaconda 開大會發(fā)布了 PyScript ,它允許我們將 Python 代碼嵌入到 HTML 中,并在瀏覽器中允許。PyScript 旨在為用戶提供一流的編程語言,該語言具有一致的樣式規(guī)則、更具表現(xiàn)力且更易于學習。

熟悉前端的朋友應該馬上就可以反應到:這就是替代 JavaScript ??!

確實,這個功能就類似于 JavaScript,如果后面發(fā)展得好的話,我們完全可以不寫 JavaScript,直接寫 Python 也能實現(xiàn)一樣的效果。

這個項目出來之后,馬上躥升到 GitHub 趨勢榜榜首,短短20天已經(jīng)有 10K+ 的 star 了,可見其熱度之高。

我們不知道 anaconda 有沒有這個野心,但是 PyScript 的出現(xiàn),確實是一件振奮人心的事情,意味著你會 Python 的話,再加上前端知識,就可以寫出漂亮的前端頁面了。對于 Pythoner 來說,我們可以用 Python 和 HTML前端知識做全棧工程師了。

作用

PyScript 核心特性:

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

PyScript 目標:

  • 提供干凈簡單的 API。
  • 支持標準 HTML。
  • 擴展 HTML 以讀取穩(wěn)定且可靠的自定義組件。
  • 提供可插拔、可擴展的組件系統(tǒng)。

使用方法

下面,我們來體驗一下這個新生事物吧!

我們可以使用 CDN 來安裝 PyScript:

<link?rel="stylesheet"? rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ?/>
<script?defer?src="https://pyscript.net/alpha/pyscript.js"></script>

接著,我們來看看一個簡單的頁面:

<!DOCTYPE?html>
<html?lang="en">
<head>
????<meta?charset="UTF-8">
????<meta?http-equiv="X-UA-Compatible"?content="IE=edge">
????<meta?name="viewport"?content="width=device-width,?initial-scale=1.0">
????<!--?引入?PyScript?-->
????<link?rel="stylesheet"? rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ?/>
????<script?defer?src="https://pyscript.net/alpha/pyscript.js"></script>
????<title>First?PyScript?Application</title>
????<style>
????????py-script?{
????????????width:?100%;
????????????height:?100%;
????????????font-size:?20px;
????????????text-align:?center;
????????????position:?absolute;
????????}
????</style>
</head>
<body>
????<py-script>
????????print('Hello?PyScript!')
????</py-script>
</body>
</html>

運行這個程序,你就可以在瀏覽器頁面上看到這個結(jié)果了:

這就是我們著名的Hello式問候!

這段前端代碼里面,我們直接使用py-script標簽包裹 Python 代碼,就實現(xiàn)前端腳本控制功能了。

我這里是在 vscode 里面運行的,運行代碼之前需要安裝Live Server這個插件,然后就可以直接瀏覽器訪問了。

我們再來看一個復雜一點的例子:

<html>
????<head>
??????<link?rel="stylesheet"? rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ?/>
??????<script?defer?src="https://pyscript.net/alpha/pyscript.js"></script>
??????<link? rel="external nofollow" ?rel="stylesheet"?crossorigin="anonymous">
????</head>

??<body>
????<b><p>Today?is?<u><label?id='today'></label></u></p></b>
????<br>
????<div?id="pi"?class="alert?alert-primary"></div>
????<py-script>
????????import?datetime?as?dt
????????pyscript.write('today',?dt.date.today().strftime('%A?%B?%d,?%Y'))

????????def?compute_pi(n):
????????????pi?=?2
????????????for?i?in?range(1,n):
????????????????pi?*=?4?*?i?**?2?/?(4?*?i?**?2?-?1)
????????????return?pi

????????pi?=?compute_pi(100000)
????????pyscript.write('pi',?f'π?is?approximately?{pi:.3f}')
????</py-script>
??</body>
</html>

這個例子中,我們使用<py-script>標簽,在里面提供.write()方法,將字符串寫到頁面的標簽中。

運行這段代碼,我們會看到瀏覽器頁面的結(jié)果:

我們還可以在頁面中引入 Python 的包,來實現(xiàn)一些簡便的操作。

<html>
????<head>
??????<link?rel="stylesheet"? rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" ?/>
??????<script?defer?src="https://pyscript.net/alpha/pyscript.js"></script>
??????<py-env>
????????-?numpy
????????-?matplotlib
??????</py-env>
????</head>
??<body>
????<h1>Let's?plot?random?numbers</h1>
????<div?id="plot"></div>
????<py-script?output="plot">
????????import?matplotlib.pyplot?as?plt
????????import?numpy?as?np
????????x?=?np.random.randn(1000)
????????y?=?np.random.randn(1000)

????????fig,?ax?=?plt.subplots()
????????ax.scatter(x,?y)
????????fig
????</py-script>
??</body>
</html>

在這里,我們引用了numpymatplotlib這兩個包,引用包是在<head>標簽內(nèi)部通過<py-env>標簽來實現(xiàn)。

運行這個程序,我的頁面始終處于加載狀態(tài):

現(xiàn)階段,運行帶有 PyScript 的頁面加載速度還是有點感人的,好像一下子回到了原始年代。所以,想要被大家廣泛使用還有很長的路要走。

目前階段,我們還只能繼續(xù)等待,想要嘗鮮的話,可以在去 GitHub 上看看。在公眾號后臺留言PyScript獲取項目的 GitHub 地址。

總結(jié)

項目現(xiàn)在還在完善階段,許多功能還沒有支持,但是從其熱度和參與貢獻的人數(shù)來看,前途還是光明的,畢竟 Python 有著這么多的應用基礎(chǔ),學會 Python 就可以寫前端, Python 的那些便捷操作庫都可以在頁面直接使用的話,會大大提高大家的效率,我們也不用去學習現(xiàn)在越來越復雜的那一套前端技術(shù)了。

到此這篇關(guān)于基于python詳解PyScript到底是什么的文章就介紹到這了,更多相關(guān)python PyScript內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

洛扎县| 霍城县| 宜州市| 宝清县| 平乐县| 通山县| 曲阳县| 军事| 阳东县| 田阳县| 湘潭市| 白玉县| 和政县| 大城县| 始兴县| 寻乌县| 沁水县| 平顶山市| 临武县| 福建省| 资中县| 平乡县| 旬邑县| 泾阳县| 诸暨市| 罗田县| 抚顺县| 鹰潭市| 德阳市| 永川市| 大同市| 双柏县| 涟源市| 古蔺县| 景洪市| 商城县| 旺苍县| 新竹县| 浦县| 丰台区| 东乡县|