ToB企服应用市场:ToB评测及商务社交产业平台

标题: 架构和运行机制 [打印本页]

作者: 钜形不锈钢水箱    时间: 2024-10-22 10:03
标题: 架构和运行机制
本篇主要先容Streamlit的核心架构和运行机制,
目的是盼望朋友们能先从整体上宏观的了解Streamlit,利用它提供的机制开发性能更高效的应用。
1. 架构

Streamlit比较特别,它对利用者来说是BS架构应用,而随开发者来说其实更像一个CS架构的应用。
为什么说Streamlit更像CS架构呢?
因为后端功能和前端UI部分都是用Python写,以是开发Streamlit应用时的感觉,就像开发桌面应用一样。
如果你有CS应用的开发经验,比如QT,.Net平台的winform或WPF等,那么开发Streamlit的应用会觉得非常亲切。
虽然最终是在浏览器中利用Streamlit应用,但是开发时完全不需要HTML、CSS或JavaScript等前端知识。
不外,Streamlit App摆设之后,需要注意它BS应用的一面:
2. 运行流程

Streamlit的主要流程简单直接:

Streamlit App每次吸收用户操纵之后,会重新运行整个代码,然后将重新渲染的页面返回,
这样会带来两个显而易见的问题。
比如:
[code]import streamlit as stimport pandas as pdfrom datetime import datetime## 数据加载def load_data():    df = pd.DataFrame()    df.index = pd.date_range("2024/10/01", periods=20)    df["A"] = range(20)    df["B"] = range(20)    st.text(f"加载数据时间:{datetime.now().strftime("%Y-%m-%d %H:%M:%S")}")    return df# 加载数据data = load_data()date_range = st.slider(    "日期范围",    min_value=datetime(2024, 10, 1),    max_value=datetime(2024, 10, 20),    value=(datetime(2024, 10, 1), datetime(2024, 10, 20)),)data = data[data.index >= date_range[0]]data = data[data.index




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4