streamlit(python構(gòu)建web)之環(huán)境搭建過程
前言
在微信的訂閱號文章中偶然看到了一篇對于streamlit的介紹,因為此庫對于學(xué)習過Javaweb和pythonweb開發(fā)的我來說,我個人認為比起python的flask等框架來說,streamlit 能夠快速開發(fā)web程序用于開發(fā)安全掃描工具提供了極大的便利,在看到它的應(yīng)用后,讓我眼前一亮.
1. 什么是Streamlit?
Streamlit是一個專為數(shù)據(jù)科學(xué)家設(shè)計的開源Python庫,它通過提供直觀的API簡化了將數(shù)據(jù)分析腳本轉(zhuǎn)化為完全功能的Web應(yīng)用的過程。
使用Streamlit,開發(fā)者可以輕松地添加交互式組件,如滑塊、下拉菜單和文本輸入框,以收集用戶輸入,同時能夠動態(tài)地展示圖表、圖像、數(shù)據(jù)表格和文本,從而創(chuàng)建出既美觀又實用的數(shù)據(jù)驅(qū)動應(yīng)用。
Streamlit的應(yīng)用范圍廣泛,從快速原型開發(fā)到復(fù)雜的數(shù)據(jù)儀表板,都可以通過它來實現(xiàn),極大地提高了開發(fā)效率并降低了技術(shù)門檻。
2. Streamlit的原理
Streamlit的工作原理基于Python的Jupyter Notebook。它通過將Python腳本轉(zhuǎn)換為交互式Web應(yīng)用,讓復(fù)雜的數(shù)據(jù)處理和分析過程變得可視化和可交互。Streamlit應(yīng)用的運行依賴于一個簡單的Web服務(wù)器,這使得它易于部署和分享。
Jupyter Notebook 可以理解為筆記應(yīng)用,每一段代碼之間,可以獨立運行下面用anaconda中內(nèi)置的工具做個 Jupyter Notebook 演示.
如下圖所示,隨便用我寫的兩個小demo進行演示:, Jupyter Notebook 可以分別對代碼片段進行運行,是數(shù)據(jù)分析科學(xué)家常常用的工具,當然本篇介紹的不是這個,也就簡單介紹一下,可以運行不同的代碼片段,并將運行的結(jié)果,包括數(shù)據(jù),表格,甚至圖表以及第三方庫例如Pandas、Matplotlib、Seaborn、Pyecharts等的效果也可進行展示,因此廣為使用.
2.1 demo1-運行計時程序
import time def main(): # 記錄開始時間 start_time = time.time() time.sleep(2) # 模擬耗時2秒的任務(wù) # 記錄結(jié)束時間 end_time = time.time() # 計算并打印執(zhí)行時間 print(f"程序運行時間: {end_time - start_time} 秒") if __name__ == "__main__": main()
2.2 demo2-隨即密碼生成器
import random import string def generate_password(length=10): # 定義密碼字符集,包括大小寫字母和數(shù)字 characters = string.ascii_letters + string.digits # 使用random.choices隨機選擇字符 password = ''.join(random.choices(characters, k=length)) return password # 生成并打印密碼 password = generate_password() print("生成的隨機密碼是:", password)
3. 安裝Streamlit
3.1 安裝方式一
直接進行dos命令安裝,這種需要自己有配置好的python環(huán)境,這里我使用PyCharm的專業(yè)版進行使用,當然社區(qū)版也是可以的,這里我使用了prowershell也就是管理員名令環(huán)境,如果遇到無法安裝,也可自行在管理員窗口下運行.
安裝Streamlit非常簡單,只需要一行命令:
pip install streamlit
3.2 安裝方式二
3.2.1 安裝 conda
- 前往 Download Anaconda Distribution | Anaconda ,選擇與你操作系統(tǒng)(Windows, Mac 或 Linux)對應(yīng)的
conda
版本 - 下載安裝器并運行,完成
conda
的安裝
3.2.2 新建一個 conda 環(huán)境
現(xiàn)在你已經(jīng)裝好了 conda ,讓我們來創(chuàng)建一個 conda 環(huán)境來管理所有 Python 庫依賴。
比如按照如下指令,使用 Python 3.9 版本創(chuàng)建一個新的環(huán)境:
conda create -n stenv python=3.9
其中 create -n stenv
表示創(chuàng)建一個名為 stenv
的 conda 環(huán)境,而 python=3.9
會指定 conda 環(huán)境使用 3.9 版本的 Python。
3.2.3 激活 conda 環(huán)境
要使用上一步剛創(chuàng)建好的名為 stenv
的 conda 環(huán)境,則需要使用如下的命令:
conda activate stenv
3.2.4 安裝 Streamlit 庫
激活環(huán)境之后就是時候安裝 streamlit
庫了:
pip install streamlit
4. 啟動示例 Streamlit 應(yīng)用
通過在命令窗口運行下面的命令即可進行測試
streamlit hello
出現(xiàn)下面的提示輸入郵箱直接按空格置空即可
瀏覽器會彈出一個web應(yīng)用窗口,說明安裝成功
http://localhost:8501/
下面是streamlit自帶的一些動畫演示,很神奇,并且出乎我的意料
4.1 動畫演示
這個應(yīng)用程序展示了如何使用 Streamlit 來構(gòu)建很酷的動畫。 它顯示基于 Julia 集的動畫分形。使用滑塊 調(diào)整不同的參數(shù)。
4.2 繪畫演示
此演示演示了繪圖和動畫的組合 流光。我們正在一個循環(huán)中生成一堆隨機數(shù),用于 5 秒。享受!
4.3 映射演示
此演示演示如何使用st.pydeck_chart顯示地理空間數(shù)據(jù)。
4.4 DataFrame 演示
此演示演示如何使用 Pandas DataFrames 進行可視化。 (數(shù)據(jù)由聯(lián)合國數(shù)據(jù)瀏覽器提供)
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python實現(xiàn)郵件的批量發(fā)送的示例代碼
下面小編就為大家分享一篇Python實現(xiàn)郵件的批量發(fā)送的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01opencv 形態(tài)學(xué)變換(開運算,閉運算,梯度運算)
這篇文章主要介紹了opencv 形態(tài)學(xué)變換(開運算,閉運算,梯度運算),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2020-07-07python空值判斷方式(if xxx和if xxx is None的區(qū)別及說明
這篇文章主要介紹了python空值判斷方式(if xxx和if xxx is None的區(qū)別及說明),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-11-11pyecharts繪制時間輪播圖柱形圖+餅圖+玫瑰圖+折線圖
這篇文章主要介紹了pyecharts繪制時間輪播圖柱形圖+餅圖+玫瑰圖+折線圖,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-06-06python使用自定義user-agent抓取網(wǎng)頁的方法
這篇文章主要介紹了python使用自定義user-agent抓取網(wǎng)頁的方法,涉及Python使用urllib2模塊操作網(wǎng)頁的技巧,需要的朋友可以參考下2015-04-04python爬蟲Mitmproxy安裝使用學(xué)習筆記
這篇文章主要介紹了python爬蟲Mitmproxy學(xué)習筆記分享,有需要的朋友可以收藏學(xué)習下,希望可以對你有所幫助,大家一起共同學(xué)習,共同進步2021-09-09