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

Python GUI编程各种实现的对比的更多相关文章

  1. Python gui编程pyQt5安装步骤t

    Python gui编程pyQt5安装步骤         pip install PyQt5 Pip3 install PyQt5               https://riverbankco ...

  2. Python gui编程pyQt5安装步骤

    Python gui编程pyQt5安装步骤 =============================== -m PyQt5.uic.pyuic  $FileName$ -o $FileNameWit ...

  3. Python GUI 编程

    Python GUI编程(Tkinter) Python 提供了多个图形开发界面的库,几个常用 Python GUI 库如下: Tkinter: Tkinter 模块(Tk 接口)是 Python 的 ...

  4. Python GUI编程(Tkinter) windows界面开发

    Python实现GUI简单的来说可以调用Tkinter库,这样一般的需求都可以实现,显示简单的windows窗口代码如下: python_gui.py 1 #!C:\Python27\python.e ...

  5. Python GUI编程--Tkinter

    今天看到了GUI编程,书上推荐用wxPython,去官网上看了看,发现Windows的最高支持到2.7,我用的是3.4版本,咋办,用自带的库--Tkinter呗,它是Python的默认GUI库,几乎是 ...

  6. python GUI编程tkinter示例之目录树遍历工具

    摘录 python核心编程 本节我们将展示一个中级的tkinter应用实例,这个应用是一个目录树遍历工具:它会从当前目录开始,提供一个文件列表,双击列表中任意的其他目录,就会使得工具切换到新目录中,用 ...

  7. Python -- Gui编程 -- Tkinter的使用 -- 基本控件

    1.按钮 tkBtton.py import tkinter root = tkinter.Tk() btn1 = tkinter.Button(root, anchor=tkinter.E,\ te ...

  8. Python GUI编程实践

    看完了<python编程实践>对Python的基本语法有了一定的了解,加上认识到python在图形用户界面和数据库支持方面快捷,遂决定动手实践一番. 因为是刚接触Python,对于基本的数 ...

  9. python gui编程

    1.准备工作 下载PyCharm 3.4(选择他的原因:1.有破解版,2.它的默认风格是PEB风格,一旦不符合PEB风格就会有提示) 下载并且安装界面设计工具wxFormBuilder 给python ...

随机推荐

  1. JavaWeb核心编程之Tomcat安装和配置

    什么是JavaWeb 在Sun的Java Servlet规范中, 对Java Web应用做了这样的定义: "Java Web应用由一组Servlet, HTML页面, 类, 以及其他可以被绑 ...

  2. jquery插件anccordion

    (function(){ $.fn.YAccordion=function(options){ var settings={ trigger:'click', speed:300, }; if(opt ...

  3. UIWebViewでローカルにあるHTMLを表示する&iOS6からtextAlignmentで指定する値が変更になった

    [objective-c]UIWebViewでローカルにあるHTMLを表示する xcode内にHTMLを格納して.そのHTMLをWebViewで表示する方法です. // UIWebViewの初期化UI ...

  4. HTTP协议中keep-alive

    一 . http协议是有连接的协议,这样每一个连接过来都要重新打开一个tcp的http socket,短期内同一个host 对服务器的请求就会很慢,若是能够保持住连接,就可以节省socket open ...

  5. 如何将js与HTML完全脱离

    先举出一个例子: var sound='Roar!'; function myOrneryBeast(){ alert(this); this.style.color='green';//this指代 ...

  6. Sql优化(三) 关于oracle的并发

    Oracle的并发技术可以将一个大任务分解为多个小任务由多个进程共同完成.合理地使用并发可以充分利用系统资源,提高效率.一. 并发的种类Parallel queryParallel DML(PDML) ...

  7. eclipse 快捷方式大全

    Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当 ...

  8. Protection 5 ---- Priviliege Level Checking 2

    CPU不仅仅在程序访问数据段和堆栈段的时候进行权限级别检查,当程序控制权转换的时候也会进行权限级别检查.程序控制权转换的情况很多,各种情况下检查的方式以及涉及到的检查项都是不同的.这篇文章主要描述了各 ...

  9. HDU 4661 Message Passing 【Tree】

    题意: 给一棵树,每一个结点都有一个信息,每一个时刻,某一对相邻的结点之间可以传递信息,那么存在一个最少的时间,使得所有的节点都可以拥有所有的信息.但是,题目不是求最短时间,而是求最短时间的情况下,有 ...

  10. transition与visibility与display

    http://www.zhangxinxu.com/wordpress/2013/05/transition-visibility-show-hide/ 术语解释是: visibility: 离散步骤 ...