当前位置: 首页 > news >正文

(二)利用Streamlit创建第一个app——单页面、多页面

1 单页面app

Step1:创建一个新的Python脚本。我们称之为uber_pickups.py。
Step2:在您喜爱的IDE或文本编辑器中打开uber_pickups.py,然后添加以下行:

import streamlit as st
import pandas as pd
import numpy as np

Step3:每个好的应用程序都有一个标题,所以让我们添加一个:

st.title('Uber pickups in NYC')

Step4:现在是从命令行运行Streamlit的时候了,在终端执行一下命令:

streamlit run uber_pickups.py

运行Streamlit应用程序与任何其他Python脚本都没有区别。无论何时需要查看应用程序,都可以使用此命令。

可以看到在默认浏览器自动打开了刚刚运行的网站。除此之外,在运行终端会给出两个链接,如下:
在这里插入图片描述
一个是本地链接;一个是你的设备所在的局域网链接!将此链接放入浏览器中即可访问您所搭建的网页。

2 多页面APP

随着应用程序的规模越来越大,将它们组织成多个页面变得非常有用。这使得应用程序更易于作为开发人员进行管理,更易于作为用户进行导航。Streamlit为创建多页应用程序提供了一种无摩擦的方式。页面会自动显示在应用侧边栏中的一个漂亮的导航小部件中,单击页面将导航到页面,而无需重新加载前端-这使得应用浏览速度极快!

2.1 运行多页应用程序

运行多页应用程序与运行单页应用程序相同。运行多页应用程序的命令是:

streamlit run [entrypoint file]

“入口点文件”是应用程序将向用户显示的第一个页面。向应用程序添加页面后,入口点文件将显示为侧边栏中最顶部的页面。您可以将入口点文件视为应用程序的“主页”。例如,假设你的入口点文件是Home.py。然后,要运行你的应用程序,你可以运行streamlit运行Home.py,这将启动你的应用并执行Home.py中的代码。

2.2 添加页面

创建入口点文件后,可以通过在相对于入口点文件的页面/目录中创建.py文件来添加页面。例如,如果入口点文件是Home.py,则可以创建pages/About.py文件来定义“关于”页面。以下是多页应用程序的有效目录结构:

Home.py # This is the file you run with "streamlit run"
└─── pages/└─── About.py # This is a page└─── 2_Page_two.py # This is another page└─── 3_😎_three.py # So is this

在这里插入图片描述

在文件名中添加表情符号时,最好使用带编号的前缀,以便在终端中自动完成。终端自动完成可能会被unicode(表情符号的表示方式)所混淆。

页面定义为pages/ directory中的.py文件。页面的文件名根据下面一节中的规则转换为侧边栏中的页面名称。例如,About.py文件将在侧边栏中显示为“About”,2_Page_two.py显示为“Page two”,3_😎_three.py显示为“😎 three”:
只有pages/directory 中的.py文件将作为页面加载。Streamlit忽略pages/directory和子目录中的所有其他文件。

2.3 如何在 UI 中标记和排序页面

2.3.1如何在 UI 中标记和排序页面

文件名由四个不同部分组成:
数字:如果文件前缀为数字
分割:可以是 _- 、空间或其任意组合。
标签:

相关文章:

(二)利用Streamlit创建第一个app——单页面、多页面

1 单页面app Step1:创建一个新的Python脚本。我们称之为uber_pickups.py。 Step2:在您喜爱的IDE或文本编辑器中打开uber_pickups.py,然后添加以下行: import streamlit as st import pandas as pd import numpy as npStep3&…...

一条sql查询语句在mysql中的执行过程是什么

mysql的连接器 我们想要在mysql中执行一条sql查询语句,首先需要连接到mysql服务,那么客户端首先要向mysql服务端发起连接请求,我们可以在客户端用mysql -h [ip] -P [port] -u 用户名 -p 密码 命令向服务端发起连接请求,这个连接请…...

网络互联究竟是需要什么协议相同,什么协议不同?

混淆概念的几个说法: 说法1: “以太网交换机不可以实现采用不同网络层协议的互联” 原因:以太网交换机是数据链路层的设备,不懂网络层的知识 说法2: “网桥可互联不同的物理层、不同的MAC子层以及不同速率的以太网”…...

ajax axios json

目录 一、ajax概述 1. 概念 2. 实现方式 (1)原生的JS实现方式(了解) (2) JQeury实现方式 二、axios 介绍 三、axios使用 1. axios 发送get/post请求 2. axios验证用户名称是否存在 四、json 1. …...

外观模式——提供统一入口

1、简介 1.1、概述 在软件开发中,有时候为了完成一项较为复杂的功能,一个类需要和多个其他业务类交互,而这些需要交互的业务类经常会作为一个完整的整体出现,由于涉及的类比较多,导致使用时代码较为复杂。此时&#…...

Vue中导入并读取Excel数据

在工作中遇到需要前端上传excel文件获取到相应数据处理之后传给后端并且展示上传文件的数据. 一、引入依赖 npm install -S file-saver xlsxnpm install -D script-loadernpm install xlsx二、在main.js中引入 import XLSX from xlsx三、创建vue文件 <div><el-uplo…...

CUDA常用函数

cudaDeviceSynchronize cudaDeviceSynchronize是一个CUDA函数&#xff0c;用于同步当前设备上的所有CUDA流。它会阻塞调用它的线程&#xff0c;直到所有设备上的CUDA流都执行完为止。这可以确保在进行后续的CUDA操作时&#xff0c;先前的操作已经完成。 在CUDA程序中&#xff0…...

72. ElasticSearch常用命令

索引管理 1新建索引 curl -XPUT http://10.42.172.35:9200/index012 读写权限 curl -XPUT -d {"blocks.read":false} http://10.42.172.35:9200/index01/_settings3 查看索引 单个 curl -XGET http://10.42.172.35:9200/index01/_settings多个 curl -XGET http…...

2023.7.26(同余方程的通解与特解)

Water(扩欧求特解与通解) 题意&#xff1a;给容量分别为A与B的水杯&#xff0c;问确切喝到C水的最小操作次数 有4种操作&#xff1a;选一杯全喝&#xff0c;选一杯全部倒掉&#xff0c;选一杯装满&#xff0c;将一杯的水尽量倒到另一杯中 思路&#xff1a;只有AxByC有解时才能确…...

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像&#xff08;图生图&#xff0c;img2img&#xff09;为例 学习前言源码下载地址网络构建一、什么是Stable Diffusion&#xff08;SD&#xff09;二、Stable Diffusion的组成三、img2img生成流程1、输入图片编…...

LangChain||什么是LangChain? LangChain有什么用?

从Auto-GPT说起&#xff1a; Auto-GPT可以调用本地电脑工具处理复杂信息;Auto-GPT可以围绕目标查阅资 料、“独立思考”、及时反馈、并 及时调整下一步操作…Auto-GPT的诞生&#xff0c;创造了大家 对“将LLM作为智慧大脑来高效 处理综合复杂任务”的想象;首次尝试串联大语言模…...

秋招算法备战第28天 | 93.复原IP地址、78.子集、90.子集II

93. 复原 IP 地址 - 力扣&#xff08;LeetCode&#xff09; 这个问题可以通过深度优先搜索(DFS)的方法来解决。我们要做的就是在字符串的每个可能位置插入点&#xff0c;然后检查生成的每一部分是否在 0-255 的范围内&#xff0c;以及是否没有前导零&#xff08;除非这一部分本…...

Mongodb空间索引的使用以及与Django的对接

Mongodb的空间索引 Mongodb数据库大家都非常熟悉&#xff0c;是一个基于分布式文件存储的开源数据库系统&#xff0c;在高负载的情况下&#xff0c;添加更多的节点&#xff0c;可以保证服务器性能&#xff0c;数据结构由键值(key>value)对组成。MongoDB 文档类似于 JSON 对…...

Windows安装MySQL数据库

MySQL数据库安装 MySQL下载 下载地址&#xff1a;https://dev.mysql.com/downloads/mysql/ 可以选择下载msi或zip&#xff0c;以下为zip模式安装步骤 下载了mysql的zip安装包之后解压即可&#xff1b; Windows安装步骤 初始化MySQL&#xff0c;并记录生成的用户密码root的随机…...

聊聊函数式编程中的“式”

当谈到函数式编程的“式”时&#xff0c;通常指的是函数的组合、转换和应用&#xff0c;以及处理数据的方式和风格。在函数式编程中&#xff0c;式是用来构建程序逻辑的基本单元。 下面更详细解释函数式编程中的几个关键式&#xff1a; 函数的组合&#xff1a; 函数式编程中…...

ubuntu目录分析

在Ubuntu根目录下&#xff0c;以下是一些常见文件夹的含义&#xff1a; /bin&#xff1a;存放可执行文件&#xff0c;包含一些基本的命令和工具。 /boot&#xff1a;存放启动时所需的文件&#xff0c;如内核和引导加载程序。 /dev&#xff1a;包含设备文件&#xff0c;用于与硬…...

Python 进阶(三):正则表达式(re 模块)

❤️ 博客主页&#xff1a;水滴技术 &#x1f338; 订阅专栏&#xff1a;Python 入门核心技术 &#x1f680; 支持水滴&#xff1a;点赞&#x1f44d; 收藏⭐ 留言&#x1f4ac; 文章目录 1. 导入re模块2. re模块中的常用函数2.1 re.search()2.2 re.findall()2.3 re.sub()2.4…...

Vue2 第六节 key的作用与原理

&#xff08;1&#xff09;虚拟DOM &#xff08;2&#xff09;v-for中的key的作用 一.虚拟DOM 1.虚拟DOM就是内存中的数据 2.原生的JS没有虚拟DOM: 如果新的数据和原来的数据有重复数据&#xff0c;不会在原来的基础上新加数据&#xff0c;而是重新生成一份 3. Vue会有虚拟…...

React之组件的生命周期

React之组件的生命周期 一、概述二、整体说明三、挂载阶段四、更新阶段五、卸载阶段 一、概述 生命周期:一个事务从创建到最后消亡经历的整个过程组件的生命周期&#xff1a;组件从被创建到挂载到页面中运行&#xff0c;再到组件不用时卸载的过程意义&#xff1a;理解组件的生…...

linux -网络编程-多线程并发服务器

目录 1.三次握手和四次挥手 2 滑动窗口 3 函数封装思想 4 高并发服务器 学习目标&#xff1a; 掌握三次握手建立连接过程掌握四次握手关闭连接的过程掌握滑动窗口的概念掌握错误处理函数封装实现多进程并发服务器实现多线程并发服务器 1.三次握手和四次挥手 思考: 为什么…...

Leetcode 2123. 使矩阵中的 1 互不相邻的最小操作数

1.题目基本信息 1.1.题目描述 给你一个 下标从 0 开始 的矩阵 grid。每次操作&#xff0c;你可以把 grid 中的 一个 1 变成 0 。 如果一个矩阵中&#xff0c;没有 1 与其它的 1 四连通&#xff08;也就是说所有 1 在上下左右四个方向上不能与其他 1 相邻&#xff09;&#x…...

基于springboot的运动员健康管理系统

博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;熟悉各种主流语言&#xff0c;精通java、python、php、爬虫、web开发&#xff0c;已经做了六年的毕业设计程序开发&#xff0c;开发过上千套毕业设计程序&#xff0c;没有什么华丽的语言&#xff0…...

Vue拖拽组件:vue-draggable-plus

vue-draggable-plus 学习文档 简介 vue-draggable-plus 是一个基于 Sortablejs 的 Vue 拖拽排序组件&#xff0c;专为 Vue 3 (>v3) 或 Vue >2.7 设计。该组件解决了官方 Sortablejs Vue 组件与 Vue 3 严重脱节的问题。 核心特性 &#x1f3af; 多种使用方式&#xff…...

FFmpeg学习笔记

1. 播放器的架构 2. 播放器的渲染流程 3. ffmpeg下载与安装 3.0 查看PC是否已经安装了ffmpeg ffmpeg 3.1 下载 wget https://ffmpeg.org/releases/ffmpeg-7.0.tar.gz 3.2 解压 tar zxvf ffmpeg-7.0.tar.gz && cd ./ffmpeg-7.0 3.3 查看配置文件 ./configure …...

YOLOv8 实战指南:如何实现视频区域内的目标统计与计数

文章目录 YOLOv8改进 | 进阶实战篇&#xff1a;利用YOLOv8进行视频划定区域目标统计计数1. 引言2. YOLOv8基础回顾2.1 YOLOv8架构概述2.2 YOLOv8的安装与基本使用 3. 视频划定区域目标统计的实现3.1 核心思路3.2 完整实现代码 4. 代码深度解析4.1 关键组件分析4.2 性能优化技巧…...

C++读写锁以及实现方式

文章目录 【C专题】读写锁&#xff08;Reader-Writer Lock&#xff09;原理与实现方式&#xff08;含C11/20实践&#xff09;一、读写锁核心概念1. **什么是读写锁&#xff1f;**2. **读写锁 vs 互斥锁** 二、C中的读写锁实现方式 方案一&#xff1a;POSIX 读写锁&#xff08;p…...

开源库免费API服务平台 ALLBEAPI

开源库API化平台 ALLBEAPI &#x1f30a; GitHub仓库地址&#xff1a;https://github.com/TingjiaInFuture/allbeapi 为优秀开源库提供免费 API 服务&#xff0c;让开发者无需安装和部署即可直接调用。 &#x1f310; API 接入地址 基础 URL: https://res.allbeapi.top 所…...

Beta分布Dirichlet分布

目录 Beta分布Dirichlet分布Beta分布&Dirichlet分布从Dirichlet分布生成Beta样本Beta分布&Dirichlet分布应用 Beta分布 Beta分布是定义在区间 [ 0 , 1 ] [0, 1] [0,1]上的连续概率分布&#xff0c;通常用于模拟概率或比例的随机变量。Beta分布的概率密度函数&#xff…...

华为OD机考2025B卷 - 无向图染色(Java Python JS C++ C )

最新华为OD机试 真题目录:点击查看目录 华为OD面试真题精选:点击立即查看 题目描述 给一个无向图染色,可以填红黑两种颜色,必须保证相邻两个节点不能同时为红色,输出有多少种不同的染色方案? 输入描述 第一行输入M(图中节点数) N(边数) 后续N行格式为:V1 V2表示…...

鸿蒙OSUniApp PWA开发实践:打造跨平台渐进式应用#三方框架 #Uniapp

UniApp PWA开发实践&#xff1a;打造跨平台渐进式应用 前言 在过去的一年里&#xff0c;我们团队一直在探索如何利用UniApp框架开发高性能的PWA应用。特别是随着鸿蒙系统的普及&#xff0c;我们积累了不少有价值的实践经验。本文将分享我们在开发过程中的技术选型、架构设计和…...