专栏首页IT派Python开发者必知的13个Python GUI库

Python开发者必知的13个Python GUI库

Python是一种高级编程语言,它用于通用编程,由Guido van Rossum 在1991年首次发布。Python 的设计着重于代码的可读性。

Python有一个非常大的标准库,并且有一个动态类型系统,它还具有自动内存管理功能,支持多种编程范例。这些包括:

● 面向对象

● 命令式

● 函数式

● 程序式

图形用户界面(GUI)

GUI是一个人机交互的界面。换句话说,它是人类与计算机交互的一种方法。它使用窗口,图标和菜单,也可以通过鼠标和键盘进行操作。

GUI库

GUI库是在编写软件时,需要图形用户界面(GUI)所需要的库。在构建程序的GUI时,通常使用层叠方式,图形控制元素直接叠加在一起。

Python GUI

当你使用python编写应用程序时,你就一定要使用GUI。Python GUI的选择有很多。目前来说,Python GUI程序库有30多个跨平台框架。现在就列出其我认为最好的13个:

1. Tkinter

是一个轻量级的跨平台图形用户界面(GUI)开发工具,是Tk图形用户界面工具包标准的Python接口,目前可以运行于绝大多数的Unix平台、Windows和Macintosh系统(Tkinter教程页面:http://python-textbok.readthedocs.io/en/1.0/Introduction_to_GUI_Programming.html

2. Flexx

许多Python GUI库基于以其他语言编写的库,例如用C++编写的库有wxWidgets和libavg。但Flexx是用Python创建的,使用Web技术,也正因为如此 Flexx 是跨平台的。只需要有 Python 和浏览器就可以运行。(教程地址:http://flexx.readthedocs.io/en/latest/

3. CEF Python

该框架基于Google Chromium,面向Windows,MAC OS和Linux,其主要用于在第三方应用程序中嵌入式浏览器的使用上。(项目地址:https://github.com/cztomczak/cefpython

4. Dabo

Dabo是一个跨平台的应用程序开发框架,基于wxpython的再封装库。它提供数据库访问,商业逻辑以及用户界面。(项目地址:https://dabodev.com/

5. Kivy

Kivy基于OpenGL ES 2,能够让使用相同源代码创建的程序能跨平台运行。这个框架是事件驱动的,基于主循环,非常适合开发游戏。(项目地址:https://kivy.org/#home

6. Pyforms

Pyforms是一个用于开发GUI应用程序的Python 2.7 / 3.x跨环境运行框架。(项目地址:https://pyforms.readthedocs.io/en/v3.0/

7. PyGObject

通过PyGObject,你可以为GNOME项目编写Python应用程序,你也可以使用GTK +编写Python应用程序。(项目地址:http://pygobject.readthedocs.io/en/latest/getting_started.html

8. PyQt

Qt是一个跨平台的框架。它是用C ++编写的。这是一个非常全面的库。它包含许多工具和API。它被广泛应用于许多行业。它涵盖了很多平台。PyQt是Qt库的Python版本。PyQt3支持Qt1到Qt3。 PyQt4支持Qt4。(项目地址:https://www.riverbankcomputing.com/software/pyqt/download5

9. PySide

Qt(cute)是使用“C++”语言编写的应用程序/用户界面(UI)框架。“PySide”是“Qt”的封装。与PySide的不同之处在于PyQt可以商用。(项目地址:https://wiki.qt.io/Category:LanguageBindings::PySide::Downloads

10. PyGUI

PyGUI的一个主要目的就是尽量减少Python应用与平台底层GUI之间的代码量,面向Unix,Macintosh和Windows平台(项目地址:http://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/

11. libavg

这是一个第三方库,用C ++编写的。它具有以下特性:

● 以Python变量的形式显示元素

● 事件处理系统

● 计时器

● 日志支持(项目地址:https://www.libavg.de/site/

12. PyGTK

在Linux中常用的“GTK+”是“PyGTK”的“GTK +”封装。与Kivy和PyQt相比,它能不加修改地,稳定运行各种操作系统之上,如Linux,Windows,MacOS等(项目地址:https://github.com/GNOME/pygtk

13. wxPython

wxPython 是 Python 语言的一套优秀的 GUI 图形库,允许 Python 程序员很方便的创建完整的、功能键全的 GUI 用户界面。 (项目地址:https://wxpython.org/

上面介绍的这些GUI框架,涵盖了大部分开发人员的需要。你可以根据你自己的需求,选择适合你的GUI库。

本文分享自微信公众号 - IT派(transfer_3255716726)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-06-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 滴滴宣布进军日本!孙正义:竟有如此愚蠢的国家!

    7月19日,滴滴打车宣布与软银公司(“软银”)成立合资公司,进军日本这一全世界第三大经济体!

    IT派
  • 利用深度学习生成梵高风格画像

    现在人工智能是个大热点,而人工智能离不开机器学习,机器学习中深度学习又是比较热门的方向,本系列文章就从实战出发,介绍下如何使用MXnet进行深度学习~ 既然是实...

    IT派
  • 深度学习调参入门之小技巧

    导语:按照惯例,主推文只能推送内容相关的东西,但是今天同日推文里有一个很有趣的文章,大家有兴趣的不妨移步去一探究竟! AI科技评论按:作者杨军,从事大规模机器学...

    IT派
  • 13 个Python开发者必知的Python GUI库

    Python是一种高级编程语言,它用于通用编程,由Guido van Rossum 在1991年首次发布。Python 的设计着重于代码的可读性。

    昱良
  • Kubernetes容器日志收集

    日志从传统方式演进到容器方式的过程就不详细讲了,可以参考一下这篇文章Docker日志收集最佳实践,由于容器的漂移、自动伸缩等特性,日志收集也就必须使用新的方式来...

    Zephery
  • checkbox 和 radio 和 select 的使用

    这样凡是设置name属性为Country的将变成单选,name为city的是多选。那么如何获得被选中的元素呢?

    Mshu
  • 机器学习备忘录:你不可不知的 5 件事

    直到目前为止,要在电脑上完成一个最简单的任务仍然需要极其复杂且精确的指令说明。我们身边还有谁记得如何用穿孔卡片编程吗?又有谁还会使用 DOS 呢? 计算机编程语...

    AI科技评论
  • 如何在机器学习竞赛中更胜一筹?

    机器学习很复杂。你可能会遇到一个令你无从下手的数据集,特别是当你处于机器学习的初期。 在这篇文章中,你将学到一些基本的关于建立机器学习模型的技巧,大多数人都从中...

    IT派
  • 深入浅出InnoDB MLOG CHECKPOINT

    提示:公众号展示代码会自动折行,建议横屏阅读 1 MLOG CHECKPOINT是什么 在MySQL 5.7存储引擎InnoDB崩溃恢复中,我们一定看到过M...

    腾讯数据库技术
  • 【FinTech】机器学习是发展金融科技公司的最佳方式吗?

    今天,机器学习在金融生态系统的许多阶段扮演着不可或缺的角色。 从审批贷款到管理资产,评估风险。 然而,只有少数技术娴熟的专业人员能准确了解ML如何进入日常金融生...

    陆勤_数据人网

扫码关注云+社区

领取腾讯云代金券