streamlit,一个超强的 Python 库

你好,我是坚持分享干货的 EarlGrey,翻译出版过《Python编程无师自通》、《Python并行计算手册》等技术书籍。

如果我的分享对你有帮助,请关注我,一起向上进击。

创作不易,希望大家给一点鼓励,把公众号设置为“星标”,给文章点个“赞”“在看”,谢谢大家啦~

本周赠书,免费送3本,点击查看详情

今天想和大家推荐一个超强的 Python 库:Streamlit。先给大家看一张效果 GIF 图:

063c4dc63bb1b486e41a9df6704d0e10.gif

还不错吧?

使用 Streamlit,只需要几分钟的时间,你就可以将自己的数据分析脚本,转换成类似上图的 Web 交互应用。

正是因为它的强大和易用,Streamlit 受到越来越多数据分析师和开发者的青睐,社区也越来越强大了。

本文将简单介绍如何创建一个Streamlit应用,并使用其核心功能。

什么是Streamlit?

Streamlit 是一个开源 Python 库,可轻松创建和共享用于机器学习和数据科学的网络应用程序。只需几分钟,你就可以创建和部署功能强大的数据应用程序。

02dddccef540674e2437a4ed8f524328.png

配置好开发环境

我们只需要安装 streamlit 库就可以了。

建议先创建并激活一个对应的虚拟环境:

mkvirtualenv streamlit-app
workon streamlit-app

也可以直接用 venv 库创建虚拟环境。

然后运行如下命令即可安装 streamlit。

pip install streamlit

创建应用

让我们创建一个接收用户输入并显示的基本应用程序。打开IDE或文本编辑器,新建一个 Python 文件 (app.py),然后开始编码。

第1步:引入streamlit
import streamlit as st
第2步:添加标题和用户输入框

在 Streamlit 中,添加应用元素非常简单方便。我们添加一个标题和输入框:

st.title('My First Streamlit App')

user_input = st.text_input("Enter some text")
st.write('The user entered:', user_input)
第3步:运行app.py

保存,然后在终端运行如下命令:

streamlit run app.py

命令输出结果如下所示:

687e83467222bac9b6bef85c7a11c325.png

然后会自动打开你的默认浏览器,并访问 streamlit 应用的地址。你可以在输入框中输入内容试试,结果会实时呈现在页面上。

659c1e8e9784a5f8356395ee2de7fbd3.png

应用扩展

Streamlit 提供了很多提高应用交互性的选择,比如滑块、按钮、图表,甚至显示数据框。

下面介绍如何添加滑块,并用它来过滤数据框中的数据:

import pandas as pd 
import numpy as np  
# Create a sample dataframe 
df = pd.DataFrame(np.random.randn(10, 2), columns=['A', 'B'])  
# Add a slider 
slider_val = st.slider('Select a range', 0, 10)  
# Filter the dataframe 
filtered_df = df[df['A'] > slider_val]  
# Display the dataframe 
st.write(filtered_df)

重新运行 streamlit run app.py 命令后:

938eaea38eb6e957719fca43e2a32628.png

当然,也可以直接在原来的app.py文件里直接修改,streamlit 会自动检测到代码变动,并提示你重新运行应用。这时,只需要在网页中点击右上角的 Rerun 按钮即可。

小结

Streamlit 的功能非常强大,除了上述就介绍的核心功能之外,还支持将你的应用快速部署到云端(免费!),同时提供了 Record a Screencast 功能,让你方便地录制视频介绍你的应用。

这些功能和使用方法,我会在后续的推文中再和大家分享。

- EOF -

文章已经看到这了,别忘了在右下角点个“赞”和“在看”鼓励哦~

推荐阅读  点击标题可跳转

1、Polars:最强 Pandas 平替?

2、下载量过亿的 15 个 Python 库

3、超赞的 Python 编译器,单核提速100倍

4、bright data,一个超赞的爬虫利器!

5、Python 3.12 版本有什么变化?

回复下方「关键词」,获取优质资源

回复关键词「 pybook03」,领取进击的Grey与小伙伴一起翻译的《Think Python 2e》电子版

回复关键词「书单02」,领取进击的Grey整理的 10 本 Python 入门书的电子版

👇关注我的公众号👇

告诉你更多细节干货

da47991e27387901710d83f71b83bcc3.jpeg

欢迎围观我的朋友圈

👆每天更新所想所悟

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值