当前位置:   article > 正文

Streamlit 使用_streamlit 页面刷新

streamlit 页面刷新

简介

  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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

  StreamLit 可以在检测到源文件更改时,询问是否重新运行,可以更改 Always rerun 使得自动更新。
  Streamlit 需要更新时,会从上至下的执行程序。所以通过 ctrl + c退出时,必须有个页面在运行。

回调函数

on_changeon_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✔️

API 文档及示例

状态控制

session_state

  该变量用于记录变量,从而保证每次重新运行时记录上次变量(每次与控件交互时,会重新运行脚本)。每个会话之间都会单独记录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
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

  每次运行时界面记录+1,不同网页之间数据不相同(不同设备、同一设备不同界面都会单独计算)。

  每个空间的键值(key属性)将会自动添加到st.session_state中。实例代码如下:

cache_data | cache_resource

  用于缓存数据。使用缓存时,需要使用 cache_datacache_resource 进行修饰。如果streamlit首次看到缓存修饰符,将会运行代码并将返回值储存在缓存中,下次运行同样的函数和输入时,将会跳过执行直接返回缓存中的值作为替换。当功能代码更新时,缓存会自动更新。
   cache_data 建议缓存计算数据。例如载入从CSV导入的数据、转换的np数组、api、或者其它序列数据。他将会创建源数据的拷贝 。 运行如下代码时:

@st.cache_data  # 
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/175071
推荐阅读
相关标签