也许有些人不知道这个模块,但如果你安装python后,使用过自带的IDLE,那么你就应该了解它。tkinter作为python自带的GUI模块,IDLE便是通过该模块开发的,也是我比较喜欢的一个模块
easygui
第一次了解这个模块,还是在小甲鱼的《零基础入门学习python》时学习的,该模块对Tkinter进行了二次封装,是的GUI操作变得更为简单,但同时也局限于表层的使用,
wxpython
wxpython是一个Python包装wxWidgets(这是用C++编写),一个流行的跨平台GUI工具包。在wxPythonAPI主要模块包括一个核心模块。wxpython的优势在速运行速度较快,但编写起来较为复杂,而且界面美化效果较差…
PYQT5
Qt是一套跨平台的C++库,不论是C、Java还是Python,都可以通过它来实现GUI界面的开发。PyQt5是Qtv5的一套全面的Python绑定。它实现为超过35个扩展模块,并使Python能够在所有支持的平台(包括iOS和Android)上用作C++的替代应用程序开发语言。如果你对GUI编程非常感谢兴趣,可以用心学学这个模块,但如果你只是想快速的实现一些GUI的功能,我更推荐大家学习tkinter模块,为什么?
tkinter作为python默认自带的模块库,无需单独安装
tkinter相比于wxpython与pyqt在针对小工具的编程方面,更为高效
tkinter在网上存在大量的快速入门教程
为了证明tkinter的方便与高效,我将很早前在公司写的一个pythonGUI代码,将图片转化为素描画的小工具,晚上重写了一次,先给大家看看实现效果:
tktiner添加图片
_tkinter.TclError:couldn’trecognizedatainimagefile
关于base64
大家看到我没有加载图片,而是通过base64提前转码好二进制文件后,再进行导入,这样我们打包的exe在使用时,就无需附带一个图片文件了!
1importbase6423withopen('demo.gif','rb')asf:4data=f.read()5img=base64.b64encode(data)tkinter打包
既然我们开发的是GUI工具,必须得打包成exe才更好玩啊!但是以往很正常的打包,这次居然报错了:
最后附上工具的整体代码,可供大家参考:
HDC.Cloud华为开发者大会2020即将于2020年2月11日-12日在深圳举办,是一线开发者学习实践鲲鹏通用计算、昇腾AI计算、数据库、区块链、云原生、5G等ICT开放能力的最佳舞台。