Python GUI编程各种实现的对比
Python GUI编程各种实现的对比
从 Python 语言的诞生之日起,就有许多优秀的 GUI 工具集整合到 Python 当中,这些优秀的 GUI 工具集,使得 Python 也可以在图形界面编程领域当中大展身手,由于 Python 的流行,许多应用程序都是由 Python 结合那些优秀的 GUI 工具集编写的。下面分别介绍 Python GUI 编程的各种实现,下面的许多内容都是来自维基百科(文章后面列出了参考),这里就当做是一个没有技术色彩的整合吧。
1.Tkinter
简单介绍:
是绑定了
Python
的
Tk GUI
工具集
,就是Python
包装的Tcl代码,通过内嵌在
Python
解释器内部的
Tcl
解释器实现,
Tkinter
的调用转换成
Tcl
命令,然后交给
Tcl
解释器进行解释,实现
Python
的
GUI
界面。
对比Tk和其它语言的绑定,比如
PerlTk
,是直接由
Tk
中的
C
库实现的。
优点:
历史最悠久,
Python
事实上的标准
GUI
,
Python
中使用
Tk GUI
工具集的标准接口,已经包括在标准的
Python Windows
安
装中,著名的
IDLE
就是使用
Tkinter
实现
GUI
的创建的
GUI
简单,学起来和用起来也简单。
2.wxPython
简单介绍:
Python
对跨平台的
GUI
工具集
wxWidgets
(
C++
编写)的包装,作为
Python
的一个
扩展模块实现。
优点:
比较流行的一个
Tkinter
的替代品,在
各种平台下都表现挺好。
3.PyGTK
简单介绍:
一系列的
Python
对
GTK+ GUI
库的包装。
优点:
比较流行的一个
Tkinter
的替代品,许多
Gnome
下的著名应用程序的
GUI
都是使用
PyGTK
实现的,比如
BitTorrent
,
GIMP
和
Gedit
都有可选的实现,在
Windows
平台
似乎表现不太好,这点也无可厚非,毕竟使用的是
GTK
的
GUI
库。
4.PyQt
简单介绍:
Python
对跨平台的
GUI
工具集
Qt
的包装实现了
440
个类以及
6000
个函数或者方法
,PyQt
是作为
Python
的插件实现的。
优点:
比较流行的一个
Tkinter
的替代品,功能
非常强大,可以用Qt开发多美漂亮的界面,也就可以用PyQt开发多么漂亮的界面。
跨平台的支持很好,不过在商业授权上似乎存在一些问题。
5.PySide
简单介绍:
另一个
Python
对跨平台的
GUI
工具集
Qt
的包装,捆绑在
Python
当中,最初由
BoostC++
库实现,后来迁移到
Shiboken。
优点:
比较流行的一个
Tkinter
的替代品,和上
面类似,至于两者的区别,这里
有一个介绍。
参考资料:
[1]Tkinter
的介绍
:
http://en.wikipedia.org/wiki/Tkinter
[2]wxPython
的介绍
:
http://en.wikipedia.org/wiki/WxPython
[3]PyGTK
的介绍
:
http://en.wikipedia.org/wiki/PyGTK
[4]PyQt
的介绍
:
http://en.wikipedia.org/wiki/PyQt
[5]PySide
的介绍
:
http://en.wikipedia.org/wiki/PySide
26种pythonGUI框架:http://www.oschina.net/project/lang/25?tag=178
最新文章
- ELK日志管理之——kibana部署
- 【转】UML图中类之间的关系
- MVC 初始 Log4net (一)
- 关于使用regsvr32命令注册ActiveX控件失败的解决办法
- 5、处理模型数据ModelAndView、Map、Model以及@SessionAttributes注解
- Eclipse(非J2EE版本)配置Extjs环境以及安装部署Tomcat
- 依赖注入及AOP简述(十二)——依赖注入对象的行为增强(AOP) .
- Java 多态的实现原理
- pat1011-1020
- webpack 打包报错:One CLI for webpack must be installed. These are recommended choices, delivered as separate packages
- IEC2017级_1-2班两次博客作业成绩说明
- shell 备份 source code
- 00-JAVA语法基础--课后作业
- Hadoop源码分析之FileSystem抽象文件系统
- java访问权限表
- [No0000158]思维模型1-20
- windows 下安装composer
- GridEh 当前行
- mfc 类的析构函数
- rapidxml 解析修改内存的值
热门文章
- threadid=1: thread exiting with uncaught exception (group=0x40db8930)
- Hash算法原理理解
- java后台开发- NOTE
- Linux----给一个普通用户root权限
- Linux 二进制包安装MySQL的一些问题
- startup_LPC17XX.s 启动文件分析
- [原]容器学习(二):动手模拟AOP
- HDOJ 1495 非常可乐 【BFS】
- Android采用HttpClient下载图片
- 框架计划随笔 三.EntityFramework在传统事务脚本模式下的使用