功能
Streamlit 帮助机器学习工程师快速开发用户交互工具,几乎可取代 Flask 在机器学习项目中的地位。
个人感受
- 确实非常方便,安装python库的streamlit后,可快速入门
- 和学习前端相比,学习成本非常低
- 界面比较美观,适合用于demo和内部展示
- 通过简单的代码,就可以展示丰富的功能;但对于复杂的UI还没试
- 不需要可见的 b/s 通讯,几乎所有交互都通过操作 streamlit 句柄完成
- 运行需要基于streamlit框架
基本功能
安装
$ pip install streamlit
运行示例
$ streamlit hello --server.port 8080
我指定了端口,否则其默认运行端口是 8501
在其左侧可以选择几种主要的demo
运行程序
将其中dataframe的demo写入一个文件test.py,然后运行
$ streamlit run test.py --server.port 8080
最简单的程序段示例:
import streamlit as st
import numpy as np
import pandas as pd
dataframe = pd.DataFrame(
np.random.randn(10, 20),
columns=('col %d' % i for i in range(20)))
st.dataframe(dataframe.style.highlight_max(axis=0))
可以看到,操作几乎都基于句柄 st
对 Markdown 文本支持
import streamlit as st
text = '''
# title1
## title2
### title3
Streamlit is **_really_ cool**.
'''
st.markdown(text)
看起来也还不错,可以考虑 Obsidian+github+streamlit 建立自己的笔记网站,其优势在于支持强大的图表功能,且使用简单,不需要学习众多前端工具。
云功能(Streamlit Cloud)
部署到服务器:把 stream could 与 github 连接,运行其上的 python 代码或者展示其上笔记。
注册帐号
因为网络问题,建议使用github帐号登录streamlit。
发布应用
管理应用
在已创建的 app 右测点Setting,在 Who can view this app 中选:This app is visible to anyone with the link,程序即可被所有用户访问。
参考
官网 streamlit开发手册 python︱写markdown一样写网页,代码快速生成web工具:streamlit 重要组件介绍(二)
|