Ⅰ 八款常用的 python GUI 开发框架推荐
作为Python开发者,你迟早都会用到图形用户界面来开发应用。本文将推荐一些 Python GUI 框架,希望对大家有所帮助。
Python 的 UI 开发工具包 Kivy
https://www.oschina.net/p/kivy
Kivy是一个开源工具包能够让使用相同源代码创建的程序能跨平台运行。它主要关注创新型用户界面开发,如:多点触摸应用程序。Kivy还提供一个多点触摸鼠标模拟器。当前支持的平台包括:linux、Windows、Mac OS X和Android。
Kivy拥有能够处理动画、缓存、手势、绘图等功能。它还内置许多用户界面控件如:按纽、摄影机、表格、Slider和树形控件等。
Python 的 GUI 开发工具 Flexx
https://www.oschina.net/p/flexx
Flexx 是一个纯 Python 工具包,用来创建图形化界面应用程序。其使用 Web 技术进行界面的渲染。你可以用 Flexx 来创建桌面应用,同时也可以导出一个应用到独立的 HTML 文档。因为使用纯 Python 开发,所以 Flexx 是跨平台的。只需要有 Python 和浏览器就可以运行。如果是使用桌面模式运行,推荐使用 Firefox 。
Qt 库的 Python 绑定 PyQt
https://www.oschina.net/p/pyqt
PyQt是Qt库的Python版本。PyQt3支持Qt1到Qt3。 PyQt4支持Qt4。它的首次发布也是在1998年,但是当时它叫 PyKDE,因为开始的时候SIP和PyQt没有分开。PyQt是用SIP写的。PyQt 提供 GPL版和商业版。
Python图形开发包 wxPython
https://www.oschina.net/p/wxpython
wxPython 是 Python 语言的一套优秀的 GUI 图形库,允许 Python 程序员很方便的创建完整的、功能键全的 GUI 用户界面。 wxPython 是作为优秀的跨平台 GUI 库 wxWidgets 的 Python 封装和 Python 模块的方式提供给用户的。
就如同Python和wxWidgets一样,wxPython也是一款开源软件,并且具有非常优秀的跨平台能力,能够运行在32位windows、绝大多数的Unix或类Unix系统、Macintosh OS X上。
Tk 图形用户界面 Tkinter
https://www.oschina.net/p/tkinter
Tkinter(也叫Tk接口)是Tk图形用户界面工具包标准的Python接口。Tk是一个轻量级的跨平台图形用户界面(GUI)开发工具。Tk和Tkinter可以运行在大多数的Unix平台、Windows、和Macintosh系统。
Tkinter 由一定数量的模块组成。Tkinter位于一个名为_tkinter(较早的版本名为tkinter)的二进制模块中 。Tkinter包含了对Tk的低 级接口模块,低级接口并不会被应用级程序员直接使用,通常是一个共享库(或DLL),但是在一些情况下它也被Python解释器静态链接。
Pywin32
https://www.oschina.net/p/pywin32
Windows Pywin32允许你像VC一样的形式来使用PYTHON开发win32应用。代码风格可以类似win32 sdk,也可以类似MFC,由你选择。如果你仍不放弃vc一样的代码过程在python下,那么这就是一个不错的选择。
Python 图形界面开发包 PyGTK
https://www.oschina.net/p/pygtk
PyGTK让你用Python轻松创建具有图形用户界面的程序.底层的GTK+提供了各式的可视元素和功能,如果需要,你能开发在GNOME桌面系统运行的功能完整的软件.
PyGTK真正具有跨平台性,它能不加修改地,稳定运行各种操作系统之上,如Linux,Windows,MacOS等.除了简单易用和快速的原型开发能力外,PyGTK还有一流的处理本地化语言的独特功能.
用python快速开发绚丽桌面程序 pyui4win
https://www.oschina.net/p/py-ui4win
pyui4win是一个开源的采用自绘技术的界面库。支持C++和python。用它可以很容易实现QQ和360安全卫士这样的绚丽界面。而且,pyui4win有所见即所得界面设计器,让C++开发人员和python开发人员直接用设计工具设计界面,而不用关心界面如何生成和运行,可以显着缩短界面开发时间。在pyui4win中,界面甚至可以完全交给美工去处理,开发人员可以只负责处理业务逻辑,把开发人员彻底从繁杂的界面处理中解放出来。
以上就是为大家分享的八款常用的python GUI开发框架推荐,希望能对你有帮助。更多python学习资料,可以关注“武汉千锋”微信公众号。
Ⅱ Python 常用的标准库以及第三方库有哪些
标准库
Python拥有一个强大的标准库。Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。
Python标准库的主要功能有:
1.文本处理,包含文本格式化、正则表达式匹配、文本差异计算与合并、Unicode支持,二进制数据处理等功能
2.文件处理,包含文件操作、创建临时文件、文件压缩与归档、操作配置文件等功能
3.操作系统功能,包含线程与进程支持、IO复用、日期与时间处理、调用系统函数、日志(logging)等功能
4.网络通信,包含网络套接字,SSL加密通信、异步网络通信等功能
5.网络协议,支持HTTP,FTP,SMTP,POP,IMAP,NNTP,XMLRPC等多种网络协议,并提供了编写网络服务器的框架
6.W3C格式支持,包含HTML,SGML,XML的处理。
7.其它功能,包括国际化支持、数学运算、HASH、Tkinter等
Python社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能覆盖科学计算、Web开发、数据库接口、图形系统多个领域。第三方模块可以使用Python或者C语言编写。SWIG,SIP常用于将C语言编写的程序库转化为Python模块。Boost C++ Libraries包含了一组函式库,Boost.Python,使得以Python或C++编写的程式能互相调用。Python常被用做其他语言与工具之间的“胶水”语言。
着名第三方库
1.Web框架
Django: 开源Web开发框架,它鼓励快速开发,并遵循MVC设计,开发周期短。
ActiveGrid: 企业级的Web2.0解决方案。
Karrigell: 简单的Web框架,自身包含了Web服务,py脚本引擎和纯python的数据库PyDBLite。
Tornado: 一个轻量级的Web框架,内置非阻塞式服务器,而且速度相当快
webpy: 一个小巧灵活的Web框架,虽然简单但是功能强大。
CherryPy: 基于Python的Web应用程序开发框架。
Pylons: 基于Python的一个极其高效和可靠的Web开发框架。
Zope: 开源的Web应用服务器。
TurboGears: 基于Python的MVC风格的Web应用程序框架。
Twisted: 流行的网络编程库,大型Web框架。
Quixote: Web开发框架。
2.科学计算
Matplotlib: 用Python实现的类matlab的第三方库,用以绘制一些高质量的数学二维图形。
SciPy: 基于Python的matlab实现,旨在实现matlab的所有功能。
NumPy: 基于Python的科学计算第三方库,提供了矩阵,线性代数,傅立叶变换等等的解决方案。
3.GUI
PyGtk: 基于Python的GUI程序开发GTK+库。
PyQt: 用于Python的QT开发库。
WxPython: Python下的GUI编程框架,与MFC的架构相似。
4.其它
BeautifulSoup: 基于Python的HTML/XML解析器,简单易用。
PIL: 基于Python的图像处理库,功能强大,对图形文件的格式支持广泛。
PyGame: 基于Python的多媒体开发和游戏软件开发模块。
Py2exe: 将python脚本转换为windows上可以独立运行的可执行程序。
Ⅲ python sip版本安装错了,怎么卸载呢
先共通过开始程序或控制面板卸载试试。
如果不行,下个腾讯电脑管家,通过软件管理卸载试试。
这里提供的是强力卸载,即便卸载不彻底也没关系,垃圾清理功能是可以清除的:
打开腾讯电脑管家~~~~工具箱~~~~软件卸载~~~~强力删除
打开腾讯电脑管家~~~~工具箱~~~~清理垃圾/注册表垃圾
Ⅳ ubuntu16.04怎么搭建python开发环境
简述
原来在windows下实现的python code,因为业务需要,要将其放到Ubuntu(其实是Linux)下来进行开发和demo。因此安装了目前最新的Ubuntu16.04 64bit系统,并搭建带有GUI的python开发环境。
环境与工具选择
最终确认选择“Ubuntu16.04(64 bit)+ Python3.5 + Qt5.7.0 + SIP4.18.1 + PyQt5.7 + QScintilla2.9.2 + Eric6.0 ”
首先Ubuntu16.04是默认安装了python2.7和python3.5的,因此python这部分就可以不需要安装了。因为涉及GUI的开发,所以要准备pyqt的环境等东西。查看系统python版本:
python
python3
python3.5
另外,需要安装一个python模块:
sudo apt-get install python3-dev
否则后面的SIP安装会有找不到python.h的错误提示。
QT安装
软件安装
可以从官网下载,也可以从http://download.qt.io/archive/qt/下载,我下载了5.7.0的Linux 64bit版本,是一个.run文件。
使用上面的两行命令,进行安装,此时会弹出安装对话框:
然后按照提示一步步选择即可:
安装完成后,可以直接打开QT Creator:
软件配置
我的Qt5.7.0安装在/home/ethan下,这是在前面的安装步骤时选择的。而在/home/ethan/Qt5.7.0/5.7/gcc_64/bin/下有qmake。
安装完成后用下面的命令配置一下PATH,在当前用户主目录下的.bashrc (or .zshrc)文件中加入:
export QTDIR=/home/ethan/Qt5.7.0/5.7/gcc_64/
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${QTDIR}/lib
export PATH=${QTDIR}/bin:${PATH}
此时再在命令行中输入qmake,看到如下:
说明配置成功了。
另外需要将/usr/lib/x86_64-linux-gnu/qt4/bin/qmake软连接到/home/ethan/Qt5.7.0/5.7/gcc_64/bin/qmake上,否则后面在编译安装PyQt时可能会出问题:
sudo ln -s /home/ethan/Qt5.7.0/5.7/gcc_64/bin/qmake /usr/lib/x86_64-linux-gnu/qt4/bin/qmake
这里最好把OpenGL的库也安装上,不然后面的GUI相关工具的安装会有问题:
sudo apt-get install mesa-common-dev
sudo apt-get install libglu1-mesa-dev -y
SIP安装
因为系统接口都是C, C++的而python要调用这些C/C++接口,就需要这个SIP,安装PyQt之前必须先安装对应版本的SIP。PyQt编译时使用的SIP版本必须与python默认调用的SIP保持一致!否则python中是无法调用PyQt的。QT安装的是当前最新的QT5.7.0,这里SIP最新版本也到了4.18.1,从SIP下载https://riverbankcomputing.com/software/sip/download下载SIP安装文件,sip-4.18.1.tar.gz。在下载SIP之前,需要确认下自己的系统没有默认安装过其他版本,否则容易造成混乱。用
sip -V
可以看到系统的sip版本。不过我的系统并没有SIP的。
下载的sip-4.18.1.tar.gz是一个源码包,需要在本地编译后安装:
tar -zxvf sip-4.18.1.tar.gz
cd sip-4.18.1
python3 configure.py
sudo make
sudo make install
然后需要核对下当前的SIP版本以及python3中使用的SIP的版本,看两者是否一致。核对当前SIP版本:
sip -V
会看到是4.18.1
然后命令行中输入python3,打开python3.5环境,输入:
>>> import sip
>>> print(sip.SIP_VERSION_STR)
也看到显示是4.18.1的,这样就说明SIP版本一致了,安装OK。
QScintilla安装
QScintilla2是连接编译器和Python的接口,是Eric的必需前置组件。QScintilla2 中需要单独安装3个模块,本体,Designer和python bindings。这一步先只安装本体部分,后面两个需要等安装了PyQt5才能安装,这个顺序不能搞错,不然会在安装QScintilla的python bindings时会无法生成C++ code,导致安装的失败。首先需要从QScintilla下载https://www.riverbankcomputing.com/software/qscintilla/download下载源码包。下载完成后,对QScintilla_gpl-2.9.3.tar.gz进行解压:
tar -xzvf QScintilla_gpl-2.9.3.tar.gz
cd QScintilla-gpl-2.9.3
安装本体:
cd Qt4Qt5
qmake qscintilla.pro
sudo make
sudo make install
如果在上面的sudo make时,出现“/usr/bin/ld: cannot find -lGL”问题,可以用如下命令做个软连接:
sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 /usr/lib/libGL.so
之后再去sudo make。
PyQT5安装
PyQt是Python的一个跨平台图形开发工具集,是Python与Qt的成功融合。PyQt包含了大约440个类、超过6000个的函数和方法。
首先从PyQt5下载https://www.riverbankcomputing.com/software/pyqt/download5下载目前最新版本,PyQt5_gpl-5.7.tar.gz。使用如下命令编译安装:
tar -zxvf PyQt-gpl-5.7.tar.gz
cd PyQt-gpl-5.7
python3 configure.py
sudo make
sudo make install
然后使用python3命令进入python环境,输入:
>>>import PyQt5
此时没有任何提示,说明安装没有问题,PyQt5 mole import OK。
QScintilla安装后续部分
前面已经安装了本体Qt4Qt5部分了,这里在安装完PyQt5后,再继续安装后面的两个部分。
安装Designer
cd QScintilla-gpl-2.9.3/designer-Qt4Qt5
qmake designer.pro
sudo make
sudo make install
如果在sudo make时,遇到“fatal error: GL/gl.h: No such file or directory”的问题,这是由于系统中没有安装OpenGL库所导致。使用如下命令进行安装OpenGL库即可:
sudo apt-get install mesa-common-dev
sudo apt-get install libglu1-mesa-dev -y
安装后再进行sudo make,就OK了。
安装Python bindings
cd QScintilla-gpl-2.9.3/Python
python3 configure.py --pyqt=PyQt5
sudo make
sudo make install
这里Python bindings安装时需要指定 –pyqt=PyQt5参数,否则默认是为PyQt4安装。或者直接修改其configure.py,将pyqt5_is_default = False改为pyqt5_is_default = True也可。
Eric6安装
Eric是一款强大的开源Python IDE,支持Qt界面设计器的Eric在Python GUI开发中更是首屈一指,Python+PyQt+Eric已经成为一种标准的Python GUI开发平台。首先从Eric6下载https://sourceforge.net/projects/eric-ide/files/下载安装包代码–eric6-6.1.7.tar.gz。然后用如下命令解压安装:
tar -zxvf eric6-6.1.7.tar.gz
cd eric6-6.1.7
sudo python3 install.py
此过程会检测之前安装的各个软件及其版本信息,并且很快会安装完成:
因为是通过sudo python3 install.py来安装,在打开eric6时也要在前面加上sudo:
sudo eric6
接下来打开eric6界面进行配置,主要是配置eric编辑器功能:
刚打开界面,就提示需要进行配置:
选择Settings -> preference -> Editor -> Autocompation。勾选所有选框,打开代码自动完成功能:
选择Settings -> preference -> Editor -> QScintilla 。勾上左右的两个选框,然后在下面source中,选择from Document and API files:
选择Settings -> preference -> Editor -> APIs。勾选Complie APIs Autocompation,在Language中,选择python3。点面下面的Add from installed APIs按钮,选择住需要的.api文件。最后点击Compile APIs:
选择Settings -> preference -> Interface -> Interface。右侧Language根据喜好选择中文或者English,我这里并没有安装中文语言包,所以使用默认的English。
接下来选择自己的工程文档将要放置的位置:
最后要重启eric才生效。
接下来用一个小的demo简单验证下python开发环境是否搭建OK。
创建一个demo1.py的python源代码,demo code:
#!/usr/bin/env python
from PyQt5.QtWidgets import (QApplication, QLabel)
import sys
if __name__ == "__main__":
app = QApplication(sys.argv)
label = QLabel("<center>Hello World with PyQt5!</center>")
label.resize(200, 50)
label.show()
sys.exit(app.exec_())
然后在放置demo1.py路径下,使用如下命令运行该demo:
python3 demo1.py
Ⅳ 树莓派安装pyQT5,求sip-4.19.14.tar.gz文件下载地址
/s/1VWN91Ji2A0eYuwrv_aRG8A 提取码: ufg6