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. Android 如何修改自动同步数据的默认开关 M

    前言          欢迎大家我分享和推荐好用的代码段~~ 声明          欢迎转载,但请保留文章原始出处:          CSDN:http://www.csdn.net        ...

  2. Docker镜像与仓库(二)Dockerfile

    Docker镜像文件与仓库(二) Docker镜像文件与仓库(二) Dockerfile指令 Dockerfile格式: 1.#Comment注释2.INSTRUCTION大写的指令名 argumen ...

  3. 移动端js插件分享

    分享几个移动端使用的插件,个人感觉挺不错的. 1. TouchSlide1.1 滑动的焦点图  http://pan.baidu.com/s/1i3J6bbB 2. iscroll.js  模拟滚动条 ...

  4. SharedPreferences最佳实践

    转:http://blog.csdn.net/xushuaic/article/details/24513599 笔记摘要:该文章是我在Android Weekly中看到的,以前也一直用SharedP ...

  5. SVG image xlink:href 设置失败

    公司比较频繁的业务需求,需要在地图上面,标注地区的信息,考虑到兼容性问题,在实际开发中是通过raphael.js绘制地图信息,进行相关交互 产品部门同事辛苦的画SVG地图,可配置地图块与实际地区cod ...

  6. python模块—urllib

    1. 网页操作 urllib.urlopen(url[,data[,proxies]]) 打开一个url,返回一个文件对象,然后可以进行类似文件对象操作 url:远程数据的路径,即网址 data:表示 ...

  7. 19.java.lang.NoClassDefFoundException

    java.lang.NoClassDefFoundException未找到类定义错误 当Java虚拟机或者类装载器试图实例化某个类,而找不到该类的定义时抛出该错误. 违背安全原则异常:Secturit ...

  8. ENVISAT卫星及ASAR数据介绍

    摘要: ENVISAT卫星是欧空局的对地观测卫星系列之一,于2002年3月1日发射升空.该卫星是欧洲迄今建造的最大的环境卫星.星上载有10种探测设备,其中4种是ER S-1/2所载设备的改进型,所载最 ...

  9. Android XListView实现原理讲解及分析

    XListview是一个非常受欢迎的下拉刷新控件,但是已经停止维护了.之前写过一篇XListview的使用介绍,用起来非常简单,这两天放假无聊,研究了下XListview的实现原理,学到了很多,今天分 ...

  10. Openstack service default port

    Block Storage (cinder) 8776 publicurl and adminurl Compute API (nova-api) 8773 EC2 API 8774 openstac ...