首页 > 编程语言 >Python(Web时代)- 超简单:一行代码就能搭建网站

Python(Web时代)- 超简单:一行代码就能搭建网站

时间:2023-09-20 21:26:42浏览次数:44  
标签:Web Python 代码 st World Streamlit Hello 搭建

From: https://mp.weixin.qq.com/s/x2dJshrAdev4FweK4kwCyA

-----------------------------------------------------------------------------------

Streamlit是一款非常强大,可以实现快速创建和共享数据应用的Python库。借助他,我们可以在数分钟内构建出功能齐全的Web应用程序

 

相较而言,它比django、flask、pelican等建站工具来得快。比如我们只想要展示些简单的东西,如:收集一些歌曲,展示一些图片等

 

优点

  • 交互性Streamlit的设计理念是以数据科学家和工程师为中心,它提供了构建交互性数据应用程序的框架。相反,Pelican和Vuepress更多的是静态网站生成器,它们更专注于内容呈现,而不是用户交互。 

  • 编程语言Streamlit是使用Python编写的,让你可以用Python编写前端

  • 即时刷新:Streamlit提供了即时刷新功能,这意味着每当输入数据发生变化时,相关的结果会立即更新。 

  • 易用性:Streamlit操作简单,代码结构清晰,且具有许多内置的功能,如表格、图形和映射,让用户能够无需许多前端知识就能构建复杂的数据应用程序。

  • 定制性:Streamlit 的组件机制可以自定义UI的显示,既可以使用内置的一些组件比如按钮、输入框、表格等等,也可以使用自定义的React组件,更加的灵活自由。

 

 

安装

pip install streamlit

 

创建项目

 

Streamlit的Hello World

在安装完成后,我们可以创建一个简单的Streamlit网页应用,仅需几行代码就可以呈现出一段文本。

import streamlit as st
st.title('Hello World')

 

运行

只需运行 `streamlit run [你的Python脚本名字].py`命令,即可打开一个新的浏览器窗口显示出我们编写的"Hello World"标题。(注:第一次运行,需要输入一个电子邮箱

Image

 

 

效果

Image

 

以上一个简单的网站就搭建好了!!!

 

 

 

交互性

Streamlit的一个核心特性就是可以快速添加交互式功能。包括按钮、选框、滑块等等。同样,我们只需几行代码就可以创建一个带有滑动条的应用

 

代码示例

import streamlit as st
st.title('Hello World')
x = st.slider('请选择一个值')st.write(x, '该值的平方是:', x * x)

 

输出结果

Image

 

 

在这个应用中,滑动条可以让用户选择一个值,而应用则会显示这个值的平方。

 

 

数据的展示

Streamlit可以特别方便地展现和处理数据。比如,我们可以轻易地导入pandas库来处理数据并以表格形式展示

 

代码示例

import streamlit as stimport pandas as pd
st.title('Hello World')
x = st.slider('请选择一个值')st.write(x, '该值的平方是:', x * x)
data = pd.DataFrame({ 'Name': ['张三', '李四', '王五'], 'Age': [20, 21, 19]})
st.write(data)

 

 

输出结果

Image

 


运行上述代码,我们就会在网页上看到多出一个清晰的数据表格!!!

 

 

 

缓存

如果你的Web应用需要处理大规模数据或进行复杂运算,那么Streamlit的@st.cache_data装饰器会是一个好帮手。加了它,函数的运算结果会被缓存,直到检测到输入值变化,才会重新运算。有了它,我们就不用每次刷新页面,都要等待耗时运算了。

 

代码示例

import pandas as pdimport time
st.title('Hello World')
@st.cache_datadef cal(n): time.sleep(3) return pd.DataFrame({ 'Number': list(range(n)), })

n = st.slider('请选择一个数值:', 0, 10)st.write(cal(n))

 

 

输出结果

Image

 

 

总结:简单、快速、易用,这就是Streamlit !!!

标签:Web,Python,代码,st,World,Streamlit,Hello,搭建
From: https://www.cnblogs.com/Raul2018/p/17718422.html

相关文章

  • Python中TensorFlow的长短期记忆神经网络(LSTM)、指数移动平均法预测股票市场和可视化
    原文链接:http://tecdat.cn/?p=23689最近我们被客户要求撰写关于LSTM的研究报告,包括一些图形和统计输出。本文探索Python中的长短期记忆(LSTM)网络,以及如何使用它们来进行股市预测 ( 点击文末“阅读原文”获取完整代码数据)。在本文中,你将看到如何使用一个被称为长短时记忆的时间......
  • 10个最佳 python 装饰器
    From: https://mp.weixin.qq.com/s/3-1TikeOeLZilHnPzM9I-Q---------------------------------------------------------------------------------装饰器是可以为你的函数添加新功能的秘密武器,使你的代码更加优雅和高效。今天我们将探讨可以增强你的函数的10个最佳Python装......
  • Python语法(3)
    Python语法(3)今天我们来学习列表列表是一种常见的变量类型,可以存储一列元素,在python中元素的类型可以是不同的,不过大多数情况下应该都是相同的。列表的初始化1.直接初始化a=[]#定义一个空列表b=[1,2]#定义一个含有两个整数的列表c=[1,"python",1.23]#定义一个含有......
  • nuitka 打包编译python3 脚本
    pipinstallordered-set#加速编译pipinstallnuitkapipinstallzstandard#onefile时压缩文件#打包命令python-mnuitka--mingw64--standalone--output-dir=out--show-progress--onefile--windows-disable-console--windows-icon-from-ico=1.ico--output-di......
  • 《流畅的Python》示例5-17 提取函数的签名
    理解param.kind含义:给形参传递参数的方式,是位置传递,还是关键字传递  1defclip(text,max_len=80):2end=None3iflen(text)>max_len:4space_before=text.rfind("",0,max_len)5ifspace_before>=0:6end......
  • python脚本的力量
    来自:[强网杯2019]高明的黑客额,开门见山这么抽象吗?那就直接www.tar.gz下载吧。一下载,人傻了,40M,WEB题文件都这么大,我还以为遇到misc电子取证了,哈人。打开更是重量级,3000多个内容,一个个看这得看到猴年马月。果断想到py脚本来做,但是哥们的py编写能力太烂了,直接贴一个别人的脚......
  • MarkupSafe:Python的字符转义库
    MarkupSafe转义字符,因此在HTML和XML中使用文本是安全的。具有特殊含义的字符将被替换,使其显示为实际字符。这减轻了注入攻击,意味着不受信任的用户输入可以安全地显示在页面上。escape()函数转义文本并返回一个Markup对象。该对象将不再被转义,但与它一起使用的任何文本都将被转义,......
  • 《Web性能权威指南》高清高质量PDF电子书+源码
    前言阅读第一部分网络技术概览阅读第1章延迟与带宽阅读第2章TCP的构成第3章UDP的构成第4章传输层安全(TLS)第二部分无线网络性能第5章无线网络概览第6章Wi-Fi第7章移动网络第8章移动网络的优化建议第三部分HTTP第9章HTTP简史第10章Web性能要点第11章HTTP......
  • Python基础分享之面向对象的进一步拓展
    我们熟悉了对象和类的基本概念。我们将进一步拓展,以便能实际运用对象和类。调用类的其它信息上一讲中提到,在定义方法时,必须有self这一参数。这个参数表示某个对象。对象拥有类的所有性质,那么我们可以通过self,调用类属性。classHuman(object):laugh='hahahaha'defsho......
  • 《Python深度学习》高清高质量PDF电子书+源码
    Keras之父,TensorFlow机器学习框架贡献者详尽介绍了用Python和Keras进行深度学习的探索实践,包括计算机视觉、自然语言处理、产生式模型等应用。书中包含30多个代码示例,步骤讲解详细透彻。由于本书立足于人工智能的可达性和大众化,读者无须具备机器学习相关背景知识即可展开阅读。在学......