赞
踩
Stream Lit 是一个能够使用python的网页部署客户端。
安装可以参考官网安装教程。
StreamLit运行方式有多种,如下所示:
# 通过脚本文件本地运行 以下两种方式等价
python -m streamlit run your_script.py
streamlit run your_script.py
# 通过URL远程仓库运行
streamlit run https://raw.githubusercontent.com/streamlit/demo-uber-nyc-pickups/master/streamlit_app.py
StreamLit 可以在检测到源文件更改时,询问是否重新运行,可以更改 Always rerun 使得自动更新。
Streamlit 需要更新时,会从上至下的执行程序。所以通过 ctrl + c退出时,必须有个页面在运行。
on_change | on_click | |
checkbox | ✔️ | ❌ |
color_picker | ✔️ | ❌ |
date_input | ✔️ | ❌ |
multiselect | ✔️ | ❌ |
number_input | ✔️ | ❌ |
radio | ✔️ | ❌ |
select_slider | ✔️ | ❌ |
selectbox | ✔️ | ❌ |
slider | ✔️ | ❌ |
text_area | ✔️ | ❌ |
text_input | ✔️ | ❌ |
time_input | ✔️ | ❌ |
file_uploader | ✔️ | ❌ |
button | ❌ | ✔️ |
download_button | ❌ | ✔️ |
form_submit_button | ❌ | ✔️ |
该变量用于记录变量,从而保证每次重新运行时记录上次变量(每次与控件交互时,会重新运行脚本)。每个会话之间都会单独记录session,多个会话之间的不会重合。设计一个session用于记录按钮按下次数,每次按下时数据加1。代码实例如下所示:
import streamlit as st
# 用于初始化变量,防止重复加载
if "button_counts" not in st.session_state:
st.session_state["button_counts"] = 0
buttonFlag = st.button("按钮",key="button")
if buttonFlag==True:
st.session_state["button_counts"] += 1
st.write(st.session_state["button_counts"])
每次运行时界面记录+1,不同网页之间数据不相同(不同设备、同一设备不同界面都会单独计算)。
每个空间的键值(key属性)将会自动添加到st.session_state中。实例代码如下:
用于缓存数据。使用缓存时,需要使用 cache_data 或 cache_resource 进行修饰。如果streamlit首次看到缓存修饰符,将会运行代码并将返回值储存在缓存中,下次运行同样的函数和输入时,将会跳过执行直接返回缓存中的值作为替换。当功能代码更新时,缓存会自动更新。
cache_data 建议缓存计算数据。例如载入从CSV导入的数据、转换的np数组、api、或者其它序列数据。他将会创建源数据的拷贝 。 运行如下代码时:
@st.cache_data # 声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/175071
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。