Python用20行代码就能实现漂亮的网页界面?你确定不来看看

liftword3个月前 (02-16)技术文章54

我们在写一个网站或者一个网页界面的时候,需要学习很多东西,对小白来说很困难!比如我要做一个简单的网页交互:

要懂后端,比如Python里面的Django或者Flask,或者是Java里面的SpringBoot

要懂前端,现在都叫大前端了(因为很复杂),比如前端的框架Vue/React, 然后页面的美化框架Bootstrap ,还有html ,csss 和Javascript 三驾马车.

天啊,听听头都大呢!其实我就给老板做一个简单的交互的页面,而且我只会Python ,有没有很简单的办法可以做到呢。

今天小编在Github上逛的时候,找到一个非常酷的神器,名字叫remi ,目前收获了2300个赞。

star并不是很多, 但是这个库可是选入2018年的十大明星库 ,号称是一个独立的GUI库,而且最牛逼的就是这个库 竟然小于 100K ,是否很神奇呢,我们一起来体验一下特性:

跟其他GUI库区别? Kivy,PyQT和PyGObject都需要主机操作系统的本机代码,这意味着安装或编译大型依赖项。Remi只需要一个Web浏览器即可显示您的GUI。

我需要懂HTML吗? 不,只需要使用Python进行编码。

它是开源的吗? 当然!Remi是根据Apache许可发布的。开源,免费!

我需要某种网络服务器吗? 不,自带网络服务器。

1、安装

如何安装呢,因为是Python 库,直接用pip 即可

pip install remi

如果是没有网络的,或者服务器跟外网不通的,可以离线安装。下载这个包,然后用install 安装

python setup.py install

2、快速体验

我们来快速看一下,这个简单的Hello world网页。

这里面包含了一个 2个元素:

  • 文本Hello world ;
  • 一个Press me的按钮;

点击这个按钮还会改变Hello world的文本内容,看点一下就变成了Button pressed.

上面这个简单的效果,其实只用了20来行Python代码,都是原生的Python代码,没有用一行HTML .

我们来看一下源码:

整个代码的结构层次还很清晰的:

  • 首先声明一个MyApp类,这个类会继承母框架App里面的功能,可以认为是一个网页画布;
  • 然后在这个画布里面有3个函数:

init主要是做类的初始化工作;

main主要对这个画布布局进行设计,包含一个文本和一个按钮。

on_button_pressed主要是控件的相应,点击触发函数

  • 最后是start来启动这个类,就会生成一个本地的网站链接

3、更多复杂的网页元素

看完上面的设计是不是就觉得跟Python里面大名鼎鼎的tk库很相似啊,上面的只是开胃菜,这个remi还能提供更复杂的gui界面元素。

上面的是一个完整的demo页面,基本上常见的控件元素的都包含了,比如有菜单栏,文本,按钮,单选框,进度栏,下拉框,表格,弹出框,按钮选取文件路径,文件树形结构,日期等几十种控件。

有了这个神器,是不是可以告别Python里面的tk库,也可以省去学习HTML的时间,还等啥,赶紧下载尝鲜一下吧。

对Python感兴趣或者是正在学习的小伙伴,可以点赞关注收藏支持一波哦, 持续更新中


原文链接:
https://blog.csdn.net/NNNJ9355/article/details/107319582

相关文章

十个顶级Python 图形界面(GUI)框架供你选择

你知道嘛由于Python越来越受欢迎,并得到广泛采用,它将成为2020年流行起来的编程语言。在牢固掌握Python编程基础之后,初学者面临的下一个挑战是构建用户界面。幸运的是,有很多Python框架专...

Python GUI教程(十):创建一个复杂的GUI

本篇将会涉及: 构建一个更加复制的GUI在选项卡部件中应用多个层级添加一个树部件和一个日历部件使用一个刻度盘部件来控制一个LCD显示器部件上的数字连接刻度盘部件和LCD部件到一个单选按钮上使用一个单选...

亲身体验 FastUI:用 Python 快速构建美观的用户界面

最近,我有幸接触到一个非常有趣的 Python 库 FastUI,它是一个简单但强大的框架,可以帮助我们快速构建用户界面(UI)。作为一名 Python 开发者,UI 开发一直让我有点头疼,特别是当需...

一文全面了解:如何使用Python的界面框架 PyQt 构建 GUI

如何使用 PyQt 构建 GUI 14 分钟阅读介绍图形用户界面,更广为人知的是GUI,是当今大多数个人计算机的特征。它为不同计算技能水平的用户提供了直观的体验。尽管它们可能会使用更多资源,但由于其...

Python Qt GUI设计:UI界面可视化组件、属性概述(基础篇—4)

Qt Designer中有很多UI界面组件,每种组件相对应有可设置的属性,本篇博文来让我们简单了解一下吧~1、界面组件在Qt Designer中,提供了八大类界面可视化组件分别为:布局组件(Layou...