我们都知道当一个东西比较匮乏的时候,我们会比较苦恼,苦恼找不到好的替代。但是但一个东西比较丰富的时候,我们也会苦恼,苦恼的是如何进行选择。就比如每天我们都面临的一个巨大的难题就是今天中午吃什么?

python开发图形界面也有这样的烦恼,有很多gui框架提供我们选择,让我们眼花缭乱,我们很难从中选择一个。下面我简单介绍下主流的三个python gui框架。

python gui 中三大框架tkinter ,wxpython, pyqt如何选择

Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk8.0 的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。

python gui 中三大框架tkinter ,wxpython, pyqt如何选择

wxPython 是一款开源软件,是 Python 语言的一套优秀的 GUI 图形库,允许 Python 程序员很方便的创建完整的、功能健全的 GUI 用户界面。

python gui 中三大框架tkinter ,wxpython, pyqt如何选择

pyqt5是一套Python绑定Digia QT5应用的框架。它可用于Python 2和3。Qt库是最强大的GUI库之一。Qt强大之处在于网上有很多pyqt的资源,而且qt技术已经相当成熟,pyqt是采用基本和qt一致的api,因此之前使用过qt的人,转移到pyqt很容易,这也是我们学习编程的始终强调的一点,一通百通,当你一门语言学习扎实了,学透了,那么转移到其它语言是非常容易的。

pyqt5做为Python的一个模块,它有620多个类和6000个函数和方法。这是一个跨平台的工具包,它可以运行在所有主要的操作系统,包括UNIX,Windows,Mac OS。pyqt5是双重许可。开发者可以在GPL和商业许可之间进行选择。

QT可能是最强大的,但也许它也是最复杂的。如果你要推销自己的软件,那么你需要确保你有正确理解QT许可证或准备支付一笔不小的费用。

QT给我们带来最方便的好处,就是它有一个QT Desiginer,这个设计器可以方便我们进行页面的布局,可以说在Tkinter里面需要一坨坨的代码完成的页面布局,在QT里面只要拖一拖控件就搞定了。

python gui 中三大框架tkinter ,wxpython, pyqt如何选择

因此,Tkinter的缺点就是,如果你想要构建一个GUI界面布局,你就必须自己写代码,因为Tkinter没有提供一个图形界面设计器,我估计这也是很多人没有选择它来做软件的一个最主要原因。当然,Tkinter也有自己的优点,因为Tkinter是python自带的图形库,所以它的性能不是很差,此外,它也更容易学习。

比较了Tkinter和QT,接下来我们谈一谈wxPython。

wxPython可以说是上面两者之间的一个很好的妥协。它是免费的,源代码是开放的,允许其应用在商业产品上,你可以免费使用它和共享它。同时,它也提供类似QT Designer的设计器wxFormbuilder。可以说他就是个压缩版的QT,但是该有的功能却完全不缺失。

python gui 中三大框架tkinter ,wxpython, pyqt如何选择

看到这里,似乎有人可能已经决定使用wxPython了,但是我想告诉你的是,存在即合理这个道理。既然这三种框架都存在,并且都依然在维护,就说明这三个框架都有人在使用,并且都有自己的受众人群,也都有自己存在的意义。

很多人都在纠结到底应该选择哪一个,我觉得,先选择一个并深入研究下去,你才会知道哪个更适合自己,毕竟,萝卜白菜,各有所爱,他人满意的,并不一定适合你。

wxpython pyqt_python gui 中三大框架tkinter ,wxpython, pyqt如何选择相关推荐

  1. Python 中三大框架各自的应用场景

    Python 中三大框架各自的应用场景 django: 主要是用来搞快速开发的,他的亮点就是快速开发,节约成本,正常的并发量不过 10000, 如果要实现高并发的话,就要对 django 进行二次开发 ...

  2. python什么时候用框架_Python 中三大框架各自的应用场景

    Django: 主要是用来搞快速开发的,他的亮点就是快速开发,节约成本,正常的并发量不过 10000, 如果要实现高并发的话,就要对 django 进行二次开发,比如把整个笨重的框架给拆掉,自己写 s ...

  3. python开源项目框架二次开发_Python中三大框架各自的应用场景(DJango,flask,Tornado)...

    django:主要是用来搞快速开发的,他的亮点就是快速开发,节约成本,正常的并发量不过10000,如果要实现高并发的话,就要对django进行二次开发,比如把整个笨重的框架给拆掉,自己写socket实 ...

  4. wxpython安装linux_Ubuntu中安装wxPython

    wxPython是Python编程语言的一个GUI工具箱.他使得Python程序员能够轻松的创建具有健壮.功能强大的图形用户界面的程序.它是Python语言对流行的wxWidgets跨平台GUI工具库 ...

  5. 我用wxPython搭建GUI量化系统之财务选股工具剔除ST股和次新股

    前言 最近交易所公布了上证指数改编方案,其中有两条是和本篇文章相关的. 第一条是围绕ST个股改编.当上市公司变更为ST后一个月将从指数样板中剔除. 第二条围绕新股改编.上证指数新上市的日均市值前十的证 ...

  6. CSS面试复习(三):预处理器、工程化方案、三大框架中的CSS

    一.预处理器 1.介绍 基于CSS的另一种语言.通过工具编译成CSS.添加了很多CSS不具备的特性.能提升CSS文件的组织 2.less嵌套 3 .sass嵌套 4. less变量 5.sass变量 ...

  7. wxpython输入框_基于wxPython的GUI实现输入对话框(1)

    基于wxPython的GUI实现输入对话框(1) 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  基于wxPython的GUI实现输入对话框(1).txt ] ( ...

  8. Py之wxPython:利用wxPython设计GUI界面(图片背景+简单按钮)

    Py之wxPython:利用wxPython设计GUI界面(图片背景+简单按钮) 目录 实现界面 实现代码 实现界面 实现代码 import wxclass MyPanel(wx.Panel):def ...

  9. java中三个基本框架_对于Java基础者应该如何理解Java中的三大框架!

    三大框架:Struts+Hibernate+Spring Java三大框架主要用来做WEN应用. Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作 ...

最新文章

  1. 含有多个java程序的文件夹导入MyEclipes 出现错误的解决办法
  2. 自己动手构建iSCSI磁盘阵列
  3. VTK:相互作用之SelectAVertex
  4. ffmpeg参数中文详细解释
  5. 第四十三期:Wireshark网络分析就这么简单,你一定会喜欢的技巧
  6. Redmi K50电竞版卖点投票:120W神仙秒充一骑绝尘
  7. 【白皮书分享】工业互联网人才白皮书(2020).pdf(附下载链接)
  8. dede在首页调用留言本
  9. 计算机信息系统安全保卫工作,对计算机信息系统安全保护工作的检查
  10. 在Python中手动引发(抛出)异常
  11. C11的对齐特性是在新的头文件中stdalign.h声明的
  12. 拓端tecdat:R语言KMEANS均值聚类和层次聚类:亚洲国家地区生活幸福质量异同可视化分析和选择最优聚类数
  13. CSS的BEM命名规范
  14. STM8S 红外解码+低功耗处理
  15. 轻松学,听说你还没有搞懂 Dagger2
  16. 64 位下,dsoframer.ocx 注册时失败,错误代码为 0x80070005
  17. 网络工程师考试试题讲解视频教程
  18. 阿里 java 电话面试_阿里Java开发电话面试经历--惨败
  19. 【预测模型-RF预测】基于随机森林算法实现数据回归预测附matlab代码
  20. linux运行搜狗拼音,搜狗输入法 for Linux版的安装图文教程

热门文章

  1. 代码投毒、删库跑路,开源生态链安全该如何保证?
  2. 微软集成 Edge 开发者工具到 Visual Studio ,工具迎来“大换血”?
  3. Unity 宣布正式收购 Weta Digital
  4. 从 Web 图标演进历史看最佳实践
  5. 让软件自己写软件,英特尔的机器编程会取代程序员吗?
  6. 开源,如何以商业化模式打造万亿企业应用市场?
  7. 英特尔加入 GPU 战局,终用上 6nm 工艺?
  8. Get!读懂数据科学和机器学习,看这文就够了!
  9. @开发者 争抢技术红利,百度自研 4 款人脸硬件要和大家见面了!
  10. 美国空手道俱乐部的 Python 库原来长这样!