PyWebIO–快速高效的构建简单web服务

PyWebIO提供了一系列命令式的交互函数来在浏览器上获取用户输入和进行输出,将浏览器变成了一个“富文本终端”,可以用于构建简单的Web应用或基于浏览器的GUI应用。 PyWebIO还可以方便地整合进现有的Web服务,让你不需要编写HTML和JS代码,就可以构建出具有良好可用性的应用。

功能特性

  • 使用同步而不是基于回调的方式获取输入,代码编写逻辑更自然
  • 非声明式布局,布局方式简单高效
  • 代码侵入性小,旧脚本代码仅需修改输入输出逻辑便可改造为Web服务
  • 支持整合到现有的Web服务,目前支持与Flask、Django、Tornado、aiohttp、FastAPI框架集成
  • 同时支持基于线程的执行模型和基于协程的执行模型
  • 支持结合第三方库实现数据可视化
PyWebIO output demo
PyWebIO input demo

Installation

稳定版安装:

pip3 install -U pywebio

开发版安装:

pip3 install -U https://code.aliyun.com/wang0618/pywebio/repository/archive.zip

系统要求: PyWebIO要求 Python 版本在 3.5.2 及以上

Quickstart

Hello, world

这是一个使用PyWebIO计算 BMI指数 的脚本:

from pywebio.input import input, FLOAT
from pywebio.output import put_text

def bmi():
    height = input("请输入你的身高(cm):", type=FLOAT)
    weight = input("请输入你的体重(kg):", type=FLOAT)

    BMI = weight / (height / 100) ** 2

    top_status = [(14.9, '极瘦'), (18.4, '偏瘦'),
                  (22.9, '正常'), (27.5, '过重'),
                  (40.0, '肥胖'), (float('inf'), '非常肥胖')]

    for top, status in top_status:
        if BMI <= top:
            put_text('你的 BMI 值: %.1f,身体状态:%s' % (BMI, status))
            break

if __name__ == '__main__':
    bmi()

如果没有使用PyWebIO,这只是一个非常简单的脚本,而通过使用PyWebIO提供的输入输出函数,你可以在浏览器中与代码进行交互 [demo]

开源地址

github:https://github.com/pywebio/PyWebIO/

原创文章,作者:南猫,如若转载,请注明出处:https://southcat.net/2846.html


不妨点个广告再走嘛
(0)
上一篇 2021年11月17日 下午1:28
下一篇 2021年11月30日 上午12:01

相关推荐

发表评论

您的电子邮箱地址不会被公开。