pdf文档 PyWebIO v1.5.2 使用手册

1.72 MB 125 页 0 评论
语言 格式 评分
中文(简体)
.pdf
3
摘要
文档介绍了PyWebIO v1.5.2的使用手册,详细阐述了其特性、功能及其版本更新内容。PyWebIO是一个基于浏览器的交互式Python框架,支持同步阻塞式输入处理和非声明式布局,能够将Python代码转换为Web应用。其核心模块包括输入函数和输出函数,支持多种交互方式,如文本输入、选择下拉、多选框等。PyWebIO还支持与Flask、Django、Tornado等Web框架集成,并提供了数据可视化功能,支持Bokeh、Plotly等第三方库。版本更新中,新增了输出动画、布局修复、跨域支持等功能,同时修复了多个bug。
AI总结
### 《PyWebIO v1.5.2 使用手册》总结 --- #### 功能概述 PyWebIO 是一个可以通过最少代码实现用户交互的工具,旨在提供良好的用户体验。它将浏览器视为一个“富文本终端”,让开发者像编写终端脚本一样快速构建 Web 应用或基于浏览器的 GUI 应用,无需了解 HTML 和 JS。PyWebIO 支持整合到现有 Web 服务框架(如 Flask、Django、Tornado 等)并提供命令式 API,方便进行输入输出操作和布局控制。 --- #### 核心特性 1. **同步式输入获取**:代码逻辑自然,类似 Python 内置的 `input` 函数。 2. **非声明式布局**:布局方式简单高效。 3. **低代码侵入性**:旧脚本仅需修改输入输出逻辑即可改造成 Web 服务。 4. **支持多种运行模型**:包括基于线程和协程的执行模型。 5. **数据可视化支持**:可结合第三方库(如 Plotly、Bokeh)实现数据可视化。 --- #### 输入输出功能 1. **输入函数**(`pywebio.input` 模块): - 文本输入:`input("How old are you?", type=NUMBER)`。 - 密码输入:`password = input("Input password", type=PASSWORD)`。 - 下拉选择:`select('Which gift you want?', ['keyboard', 'ipad'])`。 - 复选框:`checkbox("User Term", options=['I agree to terms and conditions'])`。 - 单选框:`radio("Choose one", options=['A', 'B', 'C', 'D'])`。 - 多行文本输入:`textarea('Text Area', rows=3, placeholder='Some text')`。 - 文件上传:`img = file_upload("Select a image:", accept="image/*")`。 2. **输出函数**(`pywebio.output` 模块): - 输出文本、图片、表格、Markdown 等内容。 - 支持动态交互,如点击事件、轮询机制和内容更新。 --- #### 布局与事件处理 - 支持通过 `put_tabs()` 和 `puttainment()` 创建标签页和弹出框。 - 支持绑定点击事件(`onclick` 回调函数)。 - 提供轮询机制(`捆绑 Silicon`)以监控用户操作。 --- #### 会话管理 - 提供会话控制函数(如 `defer_call()` 和 `hold()`)。 - 支持跨域通信,使用 WebSocket 或 Http 协议与客户端交互。 - 会话关闭时,清理正在进行的 PyWebIO 调用。 --- #### 版本更新 1. **v1.5.2**: - 修复会话关闭后的线程保持问题。 - 修复 `put_button()` 中的协程回调问题。 2. **v1.4**: - 支持自动持有会话。 - 支持绑定点击事件到任意输出组件。 - 添加 `put_button()` 和 `put_actions()` 功能。 3. **v0.3**: - 支持 Bokeh 数据可视化。 - 更新前端代码至 TypeScript。 - 表格支持跨行/跨列单元格。 4. **v0.2**: - 支持与 Django、aiohttp 框架整合。 - 支持 Plotly、PyECharts 等第三方可视化库。 - 添加动画提升 UI 体验。 --- #### 集成与部署 1. **与主流框架整合**: - support Flask、Django、Tornado、aiohttp、FastAPI(Starlette)等。 - 使用 `start_server()` 启动服务或集成到现有框架。 2. **打包部署**: - 使用 PyInstaller 将应用打包为可执行文件或文件夹。 - 打包时需修改 `Analysis` 的 `datas` 参数。 --- #### 服务器-客户端通信协议 - WebSocket 通信:适用于 Tornado 或 aiohttp 后端。 - Http 通信:适用于 Flask 或 Django 后端。 --- #### 总结 PyWebIO通过提供简洁的 API 和强大的功能,帮助开发者快速构建基于浏览器的交互式应用,尤其适合对 UI 要求不高但需要快速开发的场景。其版本更新不断优化功能并修复问题,生态系统也在不断扩展,支持更多框架和第三方库的集成。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 118 页请下载阅读 -
文档评分
请文明评论,理性发言.