python可以做界面吗,怎么做?
▍☁python可以做界面吗,怎么做?
Python 针对图形界面(GUI)开发,提供了丰富的第三方库,比如 tkinter、wxPython、 PyQt、PySide 库。
下面我们使用 tkinter 库实现一个简单的加减乘除计算器,先上效果 Gif图,如下:
上面的计算器基本实现了简单的减加乘除计算,其实现源码也非常简单,可分为如下几步骤。
1.创建计算数字与历史计算公式的计算器显示面板,如下:
2. 重复的调用 tkinter.Button 函数,创建数字按键面板,并绑定按键number函数,如下:
3. 通过重复tkinter.Button函数创建运算符按键面板,并绑定compute计算函数,源码如下:
4.编写计算函数,实现源码如下:
▍≋python可以做界面吗,怎么做?
当然可以,Python针对桌面GUI开发,其实提供了非常多的第三方模块和库,下面我简单介绍几个,感兴趣的朋友可以尝试一下:
01
tkinter
这是一个众所周知的Python GUI开发库,Python自带(标准库),免费、开源、跨平台,非常轻巧灵活,对于日常大部分的桌面软件来说,这个库都可以轻松完成,基本组件和容器完全可以满足日常开发,但中文参考资料太少,而且在界面布局和美化上有所欠缺,如果你只是开发一个简单软件,个人使用,可以使用一下这个库,非常不错,简单易学,非常容易上手:
02
wxpython
这是一个非常优秀的Python GUI开发库(wxWidgets提供给Python的接口),免费、开源、跨平台,相比较功能单一的tkinter来说,wxpython提供的可选容器和组件更多,不管是界面布局还是美化,都有了十足的长进,RF的RIDE、Transana、GNUMed等,不少软件系统都采用wxpython开发,如果你需要开发一个美观实用的桌面软件,可以使用一下这个库,非常不错:
03
pyqt
这是一个功能强大的Python GUI开发库,Qt提供给Python的一个接口包,借助于Qt强大的组件和可视化功能,Python也可以直接拖拽控件设计界面,不管是界面布局还是美化,都有了非常大的提升,如果你本身熟悉Qt的话,那么pyqt学习起来会非常容易,对于中大型软件开发来说,是一个非常不错的选择,但在商业授权上似乎有所限制:
当然,除了以上3个模块或库外,Python还有许多其他GUI开发库,像kivy,pyside等也都非常不错,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。
▍➚python可以做界面吗,怎么做?
Python的GUI库非常多,能找到20多种,我这里就给你说几种常用的。
kivy
Kivy 是一个开源的 Python 框架,用于快速开发应用,实现各种当前流行的用户界面,比如多点触摸等等。
Kivy 可以运行于 Windows, Linux, macOS, Android, iOS 等当前绝大部分主流桌面/移动端操作系统。
Kivy 基于 Python,界面文件和程序文件相互分离的设计思路,设计简洁优雅,语法易学,适合新人入门。
PyQt
这是非常经典的Python gui库了,使用的范围也非常广,它是跨平台用户界面框架 Qt 的 Python 绑定 ,支持 Qt v4 和 Qt v5,这是老牌的界面设计库了。
PySide
PySide和PyQt的区别,前者是Qt公司的产品,后者是第三方公司的产品,二者用法基本相同,不过在使用协议上却有很大差别,PySide可以在LGPL协议下使用,PyQt则在GPL协议下使用
Tkinter
Tkinter 是 Python GUI 的一个内置的GUI标准库,其语法简单易学,适合初学者练手。
WxPython
wxPython是一个用C ++编写的适用于Python的跨平台GUI工具包,它让Python程序员们能够简单、轻松地创建功能强大的图形用户界面的程序。它目前支持的平台包括Microsoft Windows、Mac OS X和macOS,以及Linux或其他具有GTK2或GTK3库的类unix系统。
PySimpleGUI
这个库胜在简单,使用方便,能快速出简单的工具,它是对tkinter,Qt,WxPython 和 Remi 的封装,通过实现大部分“样板代码”比直接使用底层框架编写更简单、更短。看名字就知道,易于使用,但是美观方面不是特别好。
pywebview
这个库也是我刚接触到的,结合了Python和HTML,美观性一下就提起来了,对于会前端的人很友好,它是一个包含有 WebView 组件的轻量级跨平台应用容器,可以在原生GUI的窗口中显示HTML内容。脱离于浏览器在桌面应用程序中应用 Web 技术的强大功能,隐藏了 GUI 基于浏览器的事实。您可以在 pywebview 中使用像 Flask 或 Bottle 这样的轻量级 Web 框架,也可以单独使用 Python 和 DOM 之间的双向桥接。
EasyGUI
EasyGUI是一个用Python进行的非常简单、非常容易的GUI编程模块。它不同于其他GUI库,因为EasyGUI不是事件驱动的,相反,它所有的GUI交互都是通过简单的函数调用调用的,不要求程序员了解任何关于tkinter、框架、小部件、回调或lambda的信息。
flet
这就是我要重点推荐的库,这是今年初刚发布的,它是一个框架,允许你用喜欢的语言构建交互式多用户web、桌面、移动端应用程序,虽然目前只支持Python开发,但是后面计划支持多语言,基于flutter,它会有非常好的发展前景。
总结
Python的GUI库非常多,我这里只是列举了一部分,选型的时候还是从项目规模、技术难度方面去考虑。不过我目前基本都是写一些小工具,所有这些库都可以适用。
▍┞python可以做界面吗,怎么做?
用pyqt5加pycharm,非常好用,最近在用这个开发软件,pyqt5做界面,pycharm编程调用,用pyinstaller打包成单文件exe,移植到没有python环境的电脑都可以运行。
▍◔python可以做界面吗,怎么做?
python是可以做gui界面的,在这里我选择用kinter创建图形界面。
kinter介绍
kinter是python自带的gui库,使用也是非常简单的,只需要import tkinter。tkinter提供了丰富的ui控件,比如:按钮、文本、菜单、滚动条。
常用控件
Button:按钮Label:标签控件Text:显示多行文字Menu:菜单列表Message:类似于label可以显示多行Entry:输入控件Listbox:列表框Scrollbar:滚动条messagebox:弹出确认框怎么做
以下示例展示了python怎么用tkiner开发图形界面功能
其它选择
除此之外还有其它gui图形框架可供开发者选择,例如:wxPython、Jython、pyQt、pyside ……
------------------
推荐阅读:
“枯藤老树昏鸦,小桥流水人家,古道西风瘦马”这几句看起来是名词罗列,为什么给人感觉意境悠远?
下一篇: 金陵十二钗正册都有谁?