2019独角兽企业重金招聘Python工程师标准>>>

0、前言

有不少初学者会问,Python 写的程序看起来好丑啊,只能在那个黑黑的框里运行吗?隔壁家的 JS 好像挺好看的,还能有酷炫效果呢……

其实呢,术业有专攻,Python 擅长的领域在后台服务器、数据处理、科学计算等方面,以及作为一种工具,搞定各种可以自动化的事情。做界面并不是它的优势项目。但即便如此,本可以靠实力的 Python,偏偏也能靠脸走出一片天。

从诞生伊始,就有许多优秀的 GUI 工具集整合到 Python 当中,这些优秀的 GUI 工具集,使得 Python 也可以在图形界面编程领域当中大展身手。而由于 Python 的流行,也从而产生了许多由 Python 结合那些优秀的 GUI 工具集编写的应用程序。

今天我们简单分享一些 Python 的图形化界面库及其相关资源,供广大学习者参考。

本文涉及的,也是现今主流的 Python 图形化界面主要有以下几种:

  1. Tkinter
  2. PyQt
  3. wxPython
  4. PyGTK
  5. PySide
  6. Kivy

1、Tkinter

Tkinter 内置于 Python。没错,Tkinter 姓赵。是与 Tk/Tcl 关系最密切的图形库,历史悠久、用户广泛。跨平台运行,支持 windows/macOS/Linux。由于内置,就不用考虑 Python 版本问题了,也算是一大优势。

下面是一些 demo:

Python发邮件实例,并用Tkinter实现UI - 推酷

用 Tkinter 编写交互日记系统

Tkinter 学习资源:

Python GUI编程(Tkinter) - 中文教程易佰

Introduction to Tkinter - 英文教程zetcode

官方文档 py2

官方文档 py3

基于Tkinter的姻缘测试器

2、PyQt

PyQt 是 Qt 的 Python 版本,Qt 库是最强大的 GUI 库之一,PyQt 有超过620个类以及6000种函数。我想数据已经能表现PyQt的强大了吧!该库适用于 Python2 和 Python3,能在所有桌面平台运行。

demo:

某大神的仿虾米音乐界面

某大神的仿网易云播放器

学习资源:

官方文档

pyqt4 中文文档

pyqt4 英文教程

pyqt5 英文教程

有哪些颜值高的 PyQt/Qt 应用?- 知乎

基于PyQt或PySide开发图形化界面

3、wxPython

wxPython 使用 C++ 编写,是目前比较流行的替代 Tkinter 的图形界面,比 Tkinter 重但又比 PyQt 轻。官网上赫然挂着醒目的一句话:

Why the hell hasn't wxPython become the standard GUI for Python yet?

wxPython 在主流的三大桌面平台都有不错的表现,但目前仅支持 Python2,Python3 需安装 wxPython_phoenix。

demo:

一个简单的记事本软件

python+wxpython 写的音乐播放器

学习资源:

英文教程

官方教程

wxpython in action

github: ubbn/wxPython

github: wxWidgets/wxPython

4、PyGTK

PyGTK 基于 GTK+ 开发,它提供了一套全面的图形元素创建桌面程序。易用、适合快速原型,许多 Gnome 下的著名应用程序的 GUI 都是使用 PyGTK 实现的,比如 BitTorrent、GIMP

和 Gedit。跨桌面平台,但只能在 Python2 上使用,另外该库最后更新日期是 2012 年。

demo:

PyGTK 做的 Linux Server 管理毕业设计

学习资源:

英文教程

官方文档

github: majorsilence/pygtknotebook

5、PySide

基于 Qt 框架,类似于 PyQt。在 2009 年由 NOKIA 发布,现在由 Riverbank Computing 维护。跨桌面平台,甚至支持 Android 和 Symbian 。PySide 有 15 个模块,这些模块提供了强大的工具来处理 GUI,多媒体,XML 文档,网络或数据库。

demo:

python版弹幕姬

学习资源:

英文教程

Intro to PySide/PyQt: Basic Widgets and Hello, World! - Python Central

官方教程

PySide图形界面开发(一) - bamb00 - 博客园

PySide--Python图形化界面入门教程(一) - ASCII0x03 - 博客园

github: pyside/Examples

github: shuge/Qt-Python-Binding-Examples

6、Kivy

Kivy 于 2011 年发布,现在依然在不断更新。它最大的优点是不但可以在桌面平台上运行,还可以在移动设备上运行,包括 Android、iOS,甚至是树莓派。而且,Kivy 可以看作许多模块的超集:许多知名的模块如 PyGame、SDL、GStreamer 都是 Kivy 的组成部分。Kivy 的 API更加高级、统一,方便使用。

游戏 Deflectouch

游戏 FishLife

学习资料:

官网

源码

用于NUI开发的Python框架:Kivy - OPEN 开发经验库

7、后记

以上就是 Python 常见的 GUI 库。在编程教室公众号(crossincode)上做了个小调查:以上几个,你正在使用的、打算使用的、或看着比较顺眼 GUI 是哪一个?公众号内回复 gui 可参与。得票较多的,我们将继续做更深入的介绍。

其他文章及回答:

学习编程的过程中可能会走哪些弯路,有哪些经验可以参考? - Crossin 的回答 你是如何自学 Python 的? - Crossin 的回答 今天,你抢到票了吗 - Crossin的编程教室 - 知乎专栏 Python 与 Excel 不得不说的事 - Crossin的编程教室 - 知乎专栏 Python-Excel 模块哪家强?- Crossin的编程教室 - 知乎专栏 爆款游戏《贪吃蛇大作战》的 Python 实现 - Crossin的编程教室 - 知乎专栏 NBA 举办编程马拉松 - 数据分析时代的到来 - Crossin的文章 - 知乎专栏 想用 Python 做数据分析?先玩玩这个再说 - Crossin的文章 - 知乎专栏 用 Python 实现你的量化交易策略 - Crossin的文章 - 知乎专栏 Python 抓取网页乱码原因分析 - Crossin的编程教室 - 知乎专栏

Crossin的编程教室

微信ID:crossincode
论坛:Crossin的编程教室

转载于:https://my.oschina.net/crossin/blog/1825624

在这个什么都看脸的时代,如何用 GUI 提高 python 程序的颜值?相关推荐

  1. python 漂亮界面demo_在这个什么都看脸的时代,如何用 GUI 提高 python 程序的颜值?...

    0.前言 有不少初学者会问,Python 写的程序看起来好丑啊,只能在那个黑黑的框里运行吗?隔壁家的 JS 好像挺好看的,还能有酷炫效果呢-- 其实呢,术业有专攻,Python 擅长的领域在后台服务器 ...

  2. 响铃:看脸的时代,美颜修图app如何光彩活下去?

    这几天,"我的小学生证件照"刷爆了朋友圈,虽然效果简单粗暴,但也不失为一种有效的创意.类似的事还发生在今年1月,微信朋友圈被Faceu修饰过的各类搞怪"激萌"的 ...

  3. 新氧在“看脸的时代”用精细化运营赋能医美产业

    如今"颜值经济"持续升温,大众对于医美的接受度越来越高,并且在医美上的消费越来越多,医美产业迎来"黄金时代.因而有很多人认为,是如今的"颜值经济"趋势 ...

  4. AI 看脸算命,3 万张自拍揭露:颜值即命?

    作者 | 小婷 来源 | 学术头条(ID:SciTouTiao) "看面识相" 乍听上去,给人一种不太科学的感觉,但自古以来,中西方各个时代对于"看面识相"都有 ...

  5. 北京python程序员求职_想找python程序员的工作,但发现稍微好点的职位都集中在北京。我非常想当python程序员,北京值得去吗?...

    想当Python程序员,北京值得去吗?你也知道北京的人口多.环境污染很严重,房价也高得离谱,交通拥挤.但每天照样有无数人从外地往北京跑,也有无数人从北京离开.所以,还是先来看看去北上广深一类大城市工作 ...

  6. 看脸的时代,AI医美为什么没有成为风口?

    文 | 颜璇(关注AI医疗等) 来源 | 智能相对论(aixdlun) 有数据显示,自2013年到2017年,整个AI医疗行业共获得241笔国内融资.可见AI医疗已经成为资本新宠,但目前国内资本多布局 ...

  7. 为什么颜值越来越重要_看脸时代来了吗?为什么这个时代越来越注重颜值?

    最近几年,有一个词突然就火了,叫"颜值",引申出来的还有颜值担当.以至于越来越多的男生也开始化妆了,就连寒暑假.毕业季,都成为了整形的高峰期.我们不禁要问,这真的是一个看脸的时代吗 ...

  8. python程序设计简明教程知识点_[转载]看完《python简明教程》笔记及第一个python程序...

    主要是摘抄了一些书上需要注意的地方: 1.Python 是一门解释性语言. 在计算机内部, Python 解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行. 2.版 ...

  9. 哪些模块可用于python性能分析_提升Python程序性能的方法有哪些?看完你就知道啦!...

    掌握一些技巧,可尽量提高Python程序性能,也可以避免不必要的资源浪费.今天就为大家带来七个可以提升python程序性能的好习惯,赶快来学习吧:. 1.使用局部变量 尽量使用局部变量代替全局变量:便 ...

最新文章

  1. Redis 笔记(07)— sorted set 类型(添加、删除有序集合元素、获取分数范围内成员、按score排序、返回集合元素个数)
  2. python爬虫下载-python爬虫之下载文件的方式总结以及程序实例
  3. ROS 总结(一):ROS系统框架
  4. MATLAB与图像处理(一):图像中结构张量的求法(Structure Tensor)
  5. linux go redis,go-redis 连接池
  6. iOS开发HTTPS实现之信任SSL证书和自签名证书
  7. python创建脚本文件_python创建文件备份的脚本
  8. SpringBoot 封装返回类以及session 添加获取
  9. leetcode - 983. 最低票价
  10. 一直对zookeeper的应用和原理比较迷糊,今天看一篇文章,讲得很通透,分享如下(转)...
  11. 如何手动实现C语言中的字符串操作
  12. Linux服务器安全策略配置-PAM身份验证模块(二)
  13. [转]Unity3D新手引导开发手记
  14. JQM页面跳转,多种效果
  15. jQuery 第八课 —— 数据交互的升级
  16. C++对结构体按照某一项元素进行排序
  17. 大学生使用计算机的情况英语作文,关于网络的大学生英语作文(精选10篇)
  18. vb6源码 ymodem_VB爱好者乐园(VBGood)
  19. 好系统重装助手教你win10系统连接XP系统共享打印机的方法
  20. 个人认为比较有意思的文章

热门文章

  1. ibatis调用sqlserver存储过程
  2. [Hadoop][笔记]4个节点搭建Hadoop2.x HA测试集群
  3. 【Groovy基础系列】 Groovy运算符
  4. SharePoint 如何找到List的Template ID
  5. 将二叉树中每一层的节点串成链表
  6. 转学美本半年,我眼里的中美高等教育
  7. 监控日志采集的一些TIPS
  8. Win10年度更新开发必备:VS2015 Update 3正式版下载汇总
  9. 开源网络备份软件bacula数据恢复(二)
  10. 各种SmartPhone上的跨平台开源框架的总结