最近做比赛了解到了Streamlit这个库,花了几天时间浅浅入门了一下,官网虽有完整的API文档等教程,但是纯英文版的,阅读起来有些许费力,在这里想以自己的逻辑用中文简单复刻一些入门级内容,方便小白使用(大佬看见轻喷)~
Streamlit库官方地址:https://streamlit.io/
API文档地址:https://docs.streamlit.io/
Streamlit是一个基于 Python 的 Web 应用程序框架,致力于以更高效、更灵活的方式可视化数据,并分析结果。它是一个开源库,可以帮助数据科学家和学者在短时间内开发机器学习 (ML) 可视化仪表板。只需几行代码,我们就可以构建并部署强大的数据应用程序。
其实就是用Python语言写一个本地Web,应用场景常常是机器学习可视化(当然也可做其他的图表分析等),不需要任何Web前后端开发经验(事实上我也没有)。注意我们写出的Web只有本地可以访问,要接入互联网还需要其他进阶方法!
我用下来整体体会是这个库集成度很高,功能都是完整地打包入完整的API里了,所以使用起来非常简单快捷。但集成度高也有缺点,例如设计的自由度较低,诸如前端说明字的位置、大小等不能直接实现,需要借助HTML、CSS样式表等进阶手段完成。
Streamlit库的安装非常简单,和其他库别无二致。
这里推荐使用Anaconda3包管理工具(官网下载链接:https://repo.anaconda.com/archive/Anaconda3-2022.05-Windows-x86_64.exe)
建议没用过的同学先熟悉一下Anaconda3的使用方法,且配置清华源提升下载库的速度。具体的方法大家在CSDN或者全网直接搜索即可,这里不再赘述。
打开Anaconda Prompt/打开cmd指令窗口(win+R 输入cmd后回车),激活base环境(Anaconda Prompt会自动激活),即输入activate base
即可。
新建环境。输入 conda create -n 环境名 python=3.7
,环境名自取,python版本不限制,别太高或者太低即可。完成环境的建立。
切换到新建的环境。输入activate 新建的环境名
即可。
装库。直接输入pip install streamlit
即可。下载的依赖较多,需要稍微等一会儿。
到此环境配置就结束了,熟悉anaconda3的同学这边两三分钟即可搞定。
PS:装完后可以输入 streamlit help
了解相关指令;可以输入streamlit hello
查看官方给的示例网页。
首先任意在一个目录下建立一个py文件。它就是后面我们要运行的网页。我建立了一个try文件夹,py文件名也是try。
然后在py文件所在的目录下,点击资源管理器的路径栏,输入cmd后回车(其实就是打开cmd窗口并切换到这个py文件所在的目录):
先激活刚才建立的环境,输入activate 新建的环境名
即可。
然后输入streamlit run 文件名.py
即可
接着就会出现上面的提示,网页也会自动弹开,只是由于现在py文件内是空的,所以网站也是空空如也。
只要保持这个状态,网页就可以一直被打开,并且我们可以一边编程一边即时查看网页的前端显示(只需刷新界面),非常方便。
如果要退出,则在cmd窗口按下Ctrl+C即可,会出现Stopping…的提示然后网页就会关闭,即使去浏览器访问URL也无用。当然直接暴力关闭cmd窗口也是可以哒!
如果觉得上述访问的方法有点小麻烦,这里提供一种一键打开——一劳永逸的方法,其实就是将上面的指令打包成bat文件~
在刚才的文件夹(重要!)下新建一个txt文件,文件名任意,输入以下内容:
chcp 65001
@echo off
call activate
call conda activate 环境名
streamlit run 文件名.py
Pause
第一行的作用是让中文文件名也能被识别。
然后再把后缀改成.bat文件即可,这样双击它即可打开我们的网站。退出网站的方法也和刚才类似,只是如果Ctrl+C的话要多一步确认(直接关闭cmd最快!)。
第一节主要讲了写这系列博客的缘由、streamlit库的简单介绍、环境的配置和打开网页的方法,下一节讲述UI方面常用库函数的使用。
这个系列仅适合不会传统的Web开发但会python语言的新手小白,大佬看过之后轻喷哈~