Python最简单的UI界面构建方法,学习如何使用Python编写界面

大家好,小编来为大家解答以下问题,python最简单ui界面构建,python写界面怎么样,今天让我们一起来看看吧!

大家好,本文将围绕python美化图形化界面设计展开说明,pythontkinter界面美化是一个很多人都想弄明白的事情,想搞清楚python美化输出模块需要先了解以下几个事情。

1、python如何做界面

PyQt,一个基于Qt的Python接口包,可以直接使用Qt的控件薯轿茄,还可以使用QSS进行界面美化,下面我简单介绍一下这个包的安装和使用,实验环境Win7+Python3.6+PyCharm5.0,主要内容如下:

1.首先数察,安装PyQt,这个直接在cmd窗口输入命令“pip install pyqt5”就行,如下,由于安装包比较大,所以需要等待一会儿:

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文帆腊件,然后在程序中加载就行):

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文件,然后在程序中加载就行):

设计完成的UI界面,可以直接使用自带转化工具pyuic5转化为Python程序(命令pyuic5 -o py文件 ui文件,如pyuic5 -o ),如下,就是刚才设计的UI界面的Python代码:

这里我们再添加一下main函数,直接创建上面类的对象,显示对话框就行,如下:

点击运行这个程序,效果如下,和上面设计的一样,非常方便:

2、python可视化界面怎么做?

PyQt,一个基于Qt的Python接口包,可以直接使用Qt的控件薯轿茄,还可以使用QSS进行界面美化,下面我简单介绍一下这个包的安装和使用,实验环境Win7+Python3.6+PyCharm5.0,主要内容如下:

1.首先数察,安装PyQt,这个直接在cmd窗口输入命令“pip install pyqt5”就行,如下,由于安装包比较大,所以需要等待一会儿:

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文帆腊件,然后在程序中加载就行):

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文件,然后在程序中加载就行):

设计完成的UI界面,可以直接使用自带转化工具pyuic5转化为Python程序(命令pyuic5 -o py文件 ui文件,如pyuic5 -o ),如下,就是刚才设计的UI界面的Python代码:

这里我们再添加一下main函数,直接创建上面类的对象,显示对话框就行,如下:

点击运行这个程序,效果如下,和上面设计的一样,非常方便:

本文所演示的的可视化方法

散点图(Scatterplot)

直方图(Histogram)

小提琴图(Violinplot)

特征两两对比图(Pairplot)

安德鲁斯曲线(Andrewscurves)

核密度图(Kerneldensityestimationplot)

平行坐标图(Parallelcoordinates)

Radviz(力矩图?)

热力图(Heatmap)

气泡图(Bubbleplot)

这里主要使用Python一个流行的作图工具:Seabornlibrary,同时Pandas和bubbly辅助python皮卡丘代码。为什么Seaborn比较好?

因为很多时候数据分析,建模前,都要清洗数据,清洗后数据的结果总要有个格式,我知道的最容易使用,最方便输入模型,最好画图的格式叫做\"TidyData\"(WickhamH.Tidydata[J].JournalofStatisticalSoftware,2014,59(10):1-23.)其实很简单,TidyData格式就是:

每条观察(记录)自己占一行

观察(记录)的每个特征自己占一列

举个例子,我们即将作图的数据集IRIS就是TidyData(IRIS(IRIS数据集)_百度百科):

Iris数据集是常用的分类实验数据集,由Fisher,1936收集整理。Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。数据集包含150个数据集,分为3类,每类50个数据,每个数据包含4个属性。可通过花萼长度,花萼宽度,花瓣长度,花瓣宽度4个属性预测鸢尾花卉属于(Setosa,Versicolour,Virginica)三个种类中的哪一类。

该数据集包含了5个属性:

Sepal.Length(花萼长度),单位是cm;

Sepal.Width(花萼宽度),单位是cm;

Petal.Length(花瓣长度),单位是cm;

Petal.Width(花瓣宽度),单位是cm;

种类:IrisSetosa(山鸢尾)、IrisVersicolour(杂色鸢尾),以及IrisVirginica(维吉尼亚鸢尾)。

IRIS数据

可以看到,每条观察(ID=0,1,2…)自己占一行,每个特征(四个部位长/宽度,种类)自己占一列。Seaborn就是为TidyData设计的,所以方便使用。

所以这个数据集有6列,6个特征,很多时候做可视化就是为了更好的了解数据,比如这里就是想看每个种类的花有什么特点,怎么样根据其他特征把花分为三类。我个人的喜好是首先一张图尽量多的包含数据点,展示数据信息,从中发现规律。我们可以利用以下代码完全展示全部维度和数据这里用的bubbly:

三维图,全局观察

Python做出来,其实是一张可以拖动角度,放大缩小的图,拖一拖看各角度视图会发现三类还是分的挺明显的。Github上这个bubbly还是很厉害的,方便。

接下来开始做一些基础的可视化,没有用任何修饰,代码只有最关键的画图部分,可视化作卖敬悄为比赛的一个基础和开端,个人理解做出的图能看就行,美不美无所谓,不美也不扣分。因为

散点图,可以得到相关性等信息,比如基本上SepalLengthCm越大,SepalWidthCm越大

散点图

使用Jointplot,看两个变量的分布,KDE图,同时展示对应的数据点

就像上一篇说的,比赛中的每个环节都稿则至关重要,很有必要看下这些分布直方图,kde图,根据这些来处理异常值等,这里请教,为什么画了直方图还要画KDE??我理解说的都是差不多的东西。

关于KDE:\"由于核密度估计方法不利用有关数据分布的先验知识,对数据分布不附加任何假定,是一种从数据样本本身出发研究数据分布特征的方法,因而,在统计学理论和应用领域均受到高度的重视。\"

无论如何,我们先画直方图,再画KDE

直方图

KDE图

这里通过KDE可以说,由于Setosa的KDE与其他两种没有交集,直接可以用Petailength线性区分Setosa与其他两个物种。

Pairplot

箱线图,显示一组数据分散情况的统计图。形状如箱子。主要用于反映原始数据分布的特征,关键的5个黑线是最中渣大值、最小值、中位数和两个四分位数。在判断异常值,处理异常值时候有用。

BoxPlot

小提琴图

Violinplot

这个Andrewscurves很有趣,它是把所有特征组合起来,计算个值,展示该值,可以用来确认这三个物种到底好不好区分,维基百科的说法是“Ifthereisstructureinthedata,itmaybevisibleintheAndrews'curvesofthedata.”(Andrewsplot-Wikipedia)

Andrews'curves

radviz

Radviz可视化原理是将一系列多维空间的点通过非线性方法映射到二维空间的可视化技术,是基于圆形平行坐标系的设计思想而提出的多维可视化方法。圆形的m条半径表示m维空间,使用坐标系中的一点代表多为信息对象,其实现原理参照物理学中物体受力平衡定理。多维空间的点映射到二维可视空间的位置由弹簧引力分析模型确定。(Radviz可视化原理-CSDN博客),能展示一些数据的可区分规律。

数值是皮尔森相关系数,浅颜色表示相关性高,比如Petal.Length(花瓣长度)与Petal.Width(花瓣宽度)相关性0.96,也就是花瓣长的花,花瓣宽度也大,也就是个大花。

不过,现在做可视化基本上不用python了,具体为什么可以去看我的写的文章,我拿python做了爬虫,BI做了可视化,效果和速度都很好。

finereport

可视化的一大应用就是数据报表,而FineReport可以自由编写整合所需要的报表字段进行报表输出,支持定时刷新和监控邮件提醒,是大部分互联网公司会用到的日常报表平台。

尤其是公司体系内经营报表,我们用的是商业报表工具,就是finereport。推荐他是因为有两个高效率的点:①可以完成从数据库取数(有整合数据功能)—设计报表模板—数据展示的过程。②类似excel做报表,一张模板配合参数查询可以代替几十张报表。

FineBI

简洁明了的数据分析工具,也是我个人最喜欢的可视化工具,优点是零代码可视化、可视化图表丰富,只需要拖拖拽拽就可以完成十分炫酷的可视化效果,拥有数据整合、可视化数据处理、探索性分析、数据挖掘、可视化分析报告等功能,更重要的是个人版免费。

主要优点是可以实现自助式分析,而且学习成本极低,几乎不需要太深奥的编程基础,比起很多国外的工具都比较易用上手,非常适合经常业务人员和运营人员。在综合性方面,FineBI的表现比较突出,不需要编程而且简单易做,能够实现平台展示,比较适合企业用户和个人用户,在数据可视化方面是一个不错的选择;

这些是我见过比较常用的,对数据探索有帮助的可视化方法。


这个非常简单,PyQt就可以轻松实现,一个基于Qt的接口包,可以直接拖拽控件设计UI界面,下面我简单介绍一下这个包的安装和使用,感兴趣的朋友可以自己尝试一下:

1.首先,安装PyQt模块,这个直接在cmd窗口输入命令“pipinstallpyqt5”就行,如下,整个模块比较大,下载过程需要等待一会儿,保持联网:

2.安装完成后,我们就可以直接打开Qt自带的QtDesigner设计师设计界面了,这里默认会安装到site-packages->PyQt5->Qt->bin目录,打开后的界面如下,可以直接新建对话框等窗口,所有的控件都可以直接拖拽,编辑属性,非常方便:

3.这里我简单的设计了一个登录窗口,2个输入框和2个按钮,如下,这里可以直接使用QSS对界面进行美化(设置styleSheet属性即可),类似网页的CSS,如果你有一定的前端基础,那么美化起来会非常容易:

设计完成后,还只是一个ui文件,不是现成的Python代码,还需要借助pyuic5工具(也在bin目录下)才能将ui文件转化为Python代码,切换到ui文件所在目录,输入命令“”即可(这里替换成你的ui文件),转化成功后的Python代码如下(部分截图):

还需要在最下面添加一个main函数,创建上面Ui_Form类对象显示窗口即可,如下:

最后点击运行程序,效果如下,和刚才设计的界面效果一模一样:

至此,我们就完成了利用Python的PyQt模块直接拖拽控件来设计UI界面。总的来说,整个过程非常简单,只要你有一定的Python基础,熟悉一下操作过程,很快就能掌握的,当然,还有许多其他UI开发模块,像tkinter,wxPython,Eric6等,也都非常不错,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。


首先,如果没有安装python和PyQt软件的请先直接搜索下载并安装。python是一个开源软件,因此都是可以在网上免费下载的,最新版本即可。下载完成后,我们先打开PyQtdesigner。

2

打开后,首先是一个默认的新建窗口界面,在这里我们就选择默认的窗口即可。

3

现在是一个完全空白的窗口。第一步我们要先把所有的设计元素都拖进这个窗口。我们先拖入一个“Label”,就是一个不可编辑的标签。

随后我们再拖入一个可以编辑的“LineEdit”

最后我们拖入最后一个元素:“PushButton”按钮,也就是平时我们所点的确定。

目前我们已经把所有所需要的元素都拖入了新建的窗口。对于每一个元素,我们都可以双击进行属性值的修改,此时我们仅需要双击改个名字即可

此时我们已经完成了一半,接下来需要对动作信号进行操作。我们需要先切入编辑信号的模式

此时把鼠标移动到任意元素,都会发现其变成红色,代表其被选中。

当我们选中pushbutton后,继续拖动鼠标指向上面的lineedit,会发现由pushbutton出现一个箭头指向了lineedit,代表pushbutton的动作会对lineedit进行操作。

随即会弹出一个配置连接窗口。左边的是pushbutton的操作,我们选择clicked(),即点击pushbutton。

右边是对lineedit的操作,我们选择clear(),即清楚lineedit中的内容。

最后我们点击确定。

保存完成后,我们在PyQt中的操作就已经完成了。保存的文件名我们命名为test,PyQt生成的设计文件后缀是.ui。


3、python图形界面开发用什么

PyQt,一个基于Qt的Python接口包,可以直接使用Qt的控件薯轿茄,还可以使用QSS进行界面美化,下面我简单介绍一下这个包的安装和使用,实验环境Win7+Python3.6+PyCharm5.0,主要内容如下:

1.首先数察,安装PyQt,这个直接在cmd窗口输入命令“pip install pyqt5”就行,如下,由于安装包比较大,所以需要等待一会儿:

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文帆腊件,然后在程序中加载就行):

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文件,然后在程序中加载就行):

设计完成的UI界面,可以直接使用自带转化工具pyuic5转化为Python程序(命令pyuic5 -o py文件 ui文件,如pyuic5 -o ),如下,就是刚才设计的UI界面的Python代码:

这里我们再添加一下main函数,直接创建上面类的对象,显示对话框就行,如下:

点击运行这个程序,效果如下,和上面设计的一样,非常方便:

本文所演示的的可视化方法

散点图(Scatterplot)

直方图(Histogram)

小提琴图(Violinplot)

特征两两对比图(Pairplot)

安德鲁斯曲线(Andrewscurves)

核密度图(Kerneldensityestimationplot)

平行坐标图(Parallelcoordinates)

Radviz(力矩图?)

热力图(Heatmap)

气泡图(Bubbleplot)

这里主要使用Python一个流行的作图工具:Seabornlibrary,同时Pandas和bubbly辅助。为什么Seaborn比较好?

因为很多时候数据分析,建模前,都要清洗数据,清洗后数据的结果总要有个格式,我知道的最容易使用,最方便输入模型,最好画图的格式叫做\"TidyData\"(WickhamH.Tidydata[J].JournalofStatisticalSoftware,2014,59(10):1-23.)其实很简单,TidyData格式就是:

每条观察(记录)自己占一行

观察(记录)的每个特征自己占一列

举个例子,我们即将作图的数据集IRIS就是TidyData(IRIS(IRIS数据集)_百度百科):

Iris数据集是常用的分类实验数据集,由Fisher,1936收集整理。Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。数据集包含150个数据集,分为3类,每类50个数据,每个数据包含4个属性。可通过花萼长度,花萼宽度,花瓣长度,花瓣宽度4个属性预测鸢尾花卉属于(Setosa,Versicolour,Virginica)三个种类中的哪一类。

该数据集包含了5个属性:

Sepal.Length(花萼长度),单位是cm;

Sepal.Width(花萼宽度),单位是cm;

Petal.Length(花瓣长度),单位是cm;

Petal.Width(花瓣宽度),单位是cm;

种类:IrisSetosa(山鸢尾)、IrisVersicolour(杂色鸢尾),以及IrisVirginica(维吉尼亚鸢尾)。

IRIS数据

可以看到,每条观察(ID=0,1,2…)自己占一行,每个特征(四个部位长/宽度,种类)自己占一列。Seaborn就是为TidyData设计的,所以方便使用。

所以这个数据集有6列,6个特征,很多时候做可视化就是为了更好的了解数据,比如这里就是想看每个种类的花有什么特点,怎么样根据其他特征把花分为三类。我个人的喜好是首先一张图尽量多的包含数据点,展示数据信息,从中发现规律。我们可以利用以下代码完全展示全部维度和数据这里用的bubbly:

三维图,全局观察

Python做出来,其实是一张可以拖动角度,放大缩小的图,拖一拖看各角度视图会发现三类还是分的挺明显的。Github上这个bubbly还是很厉害的,方便。

接下来开始做一些基础的可视化,没有用任何修饰,代码只有最关键的画图部分,可视化作卖敬悄为比赛的一个基础和开端,个人理解做出的图能看就行,美不美无所谓,不美也不扣分。因为

散点图,可以得到相关性等信息,比如基本上SepalLengthCm越大,SepalWidthCm越大

散点图

使用Jointplot,看两个变量的分布,KDE图,同时展示对应的数据点

就像上一篇说的,比赛中的每个环节都稿则至关重要,很有必要看下这些分布直方图,kde图,根据这些来处理异常值等,这里请教,为什么画了直方图还要画KDE??我理解说的都是差不多的东西。

关于KDE:\"由于核密度估计方法不利用有关数据分布的先验知识,对数据分布不附加任何假定,是一种从数据样本本身出发研究数据分布特征的方法,因而,在统计学理论和应用领域均受到高度的重视。\"

无论如何,我们先画直方图,再画KDE

直方图

KDE图

这里通过KDE可以说,由于Setosa的KDE与其他两种没有交集,直接可以用Petailength线性区分Setosa与其他两个物种。

Pairplot

箱线图,显示一组数据分散情况的统计图。形状如箱子。主要用于反映原始数据分布的特征,关键的5个黑线是最中渣大值、最小值、中位数和两个四分位数。在判断异常值,处理异常值时候有用。

BoxPlot

小提琴图

Violinplot

这个Andrewscurves很有趣,它是把所有特征组合起来,计算个值,展示该值,可以用来确认这三个物种到底好不好区分,维基百科的说法是“Ifthereisstructureinthedata,itmaybevisibleintheAndrews'curvesofthedata.”(Andrewsplot-Wikipedia)

Andrews'curves

radviz

Radviz可视化原理是将一系列多维空间的点通过非线性方法映射到二维空间的可视化技术,是基于圆形平行坐标系的设计思想而提出的多维可视化方法。圆形的m条半径表示m维空间,使用坐标系中的一点代表多为信息对象,其实现原理参照物理学中物体受力平衡定理。多维空间的点映射到二维可视空间的位置由弹簧引力分析模型确定。(Radviz可视化原理-CSDN博客),能展示一些数据的可区分规律。

数值是皮尔森相关系数,浅颜色表示相关性高,比如Petal.Length(花瓣长度)与Petal.Width(花瓣宽度)相关性0.96,也就是花瓣长的花,花瓣宽度也大,也就是个大花。

不过,现在做可视化基本上不用python了,具体为什么可以去看我的写的文章,我拿python做了爬虫,BI做了可视化,效果和速度都很好。

finereport

可视化的一大应用就是数据报表,而FineReport可以自由编写整合所需要的报表字段进行报表输出,支持定时刷新和监控邮件提醒,是大部分互联网公司会用到的日常报表平台。

尤其是公司体系内经营报表,我们用的是商业报表工具,就是finereport。推荐他是因为有两个高效率的点:①可以完成从数据库取数(有整合数据功能)—设计报表模板—数据展示的过程。②类似excel做报表,一张模板配合参数查询可以代替几十张报表。

FineBI

简洁明了的数据分析工具,也是我个人最喜欢的可视化工具,优点是零代码可视化、可视化图表丰富,只需要拖拖拽拽就可以完成十分炫酷的可视化效果,拥有数据整合、可视化数据处理、探索性分析、数据挖掘、可视化分析报告等功能,更重要的是个人版免费。

主要优点是可以实现自助式分析,而且学习成本极低,几乎不需要太深奥的编程基础,比起很多国外的工具都比较易用上手,非常适合经常业务人员和运营人员。在综合性方面,FineBI的表现比较突出,不需要编程而且简单易做,能够实现平台展示,比较适合企业用户和个人用户,在数据可视化方面是一个不错的选择;

这些是我见过比较常用的,对数据探索有帮助的可视化方法。


这个非常简单,PyQt就可以轻松实现,一个基于Qt的接口包,可以直接拖拽控件设计UI界面,下面我简单介绍一下这个包的安装和使用,感兴趣的朋友可以自己尝试一下:

1.首先,安装PyQt模块,这个直接在cmd窗口输入命令“pipinstallpyqt5”就行,如下,整个模块比较大,下载过程需要等待一会儿,保持联网:

2.安装完成后,我们就可以直接打开Qt自带的QtDesigner设计师设计界面了,这里默认会安装到site-packages->PyQt5->Qt->bin目录,打开后的界面如下,可以直接新建对话框等窗口,所有的控件都可以直接拖拽,编辑属性,非常方便:

3.这里我简单的设计了一个登录窗口,2个输入框和2个按钮,如下,这里可以直接使用QSS对界面进行美化(设置styleSheet属性即可),类似网页的CSS,如果你有一定的前端基础,那么美化起来会非常容易:

设计完成后,还只是一个ui文件,不是现成的Python代码,还需要借助pyuic5工具(也在bin目录下)才能将ui文件转化为Python代码,切换到ui文件所在目录,输入命令“”即可(这里替换成你的ui文件),转化成功后的Python代码如下(部分截图):

还需要在最下面添加一个main函数,创建上面Ui_Form类对象显示窗口即可,如下:

最后点击运行程序,效果如下,和刚才设计的界面效果一模一样:

至此,我们就完成了利用Python的PyQt模块直接拖拽控件来设计UI界面。总的来说,整个过程非常简单,只要你有一定的Python基础,熟悉一下操作过程,很快就能掌握的,当然,还有许多其他UI开发模块,像tkinter,wxPython,Eric6等,也都非常不错,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。


首先,如果没有安装python和PyQt软件的请先直接搜索下载并安装。python是一个开源软件,因此都是可以在网上免费下载的,最新版本即可。下载完成后,我们先打开PyQtdesigner。

2

打开后,首先是一个默认的新建窗口界面,在这里我们就选择默认的窗口即可。

3

现在是一个完全空白的窗口。第一步我们要先把所有的设计元素都拖进这个窗口。我们先拖入一个“Label”,就是一个不可编辑的标签。

随后我们再拖入一个可以编辑的“LineEdit”

最后我们拖入最后一个元素:“PushButton”按钮,也就是平时我们所点的确定。

目前我们已经把所有所需要的元素都拖入了新建的窗口。对于每一个元素,我们都可以双击进行属性值的修改,此时我们仅需要双击改个名字即可

此时我们已经完成了一半,接下来需要对动作信号进行操作。我们需要先切入编辑信号的模式

此时把鼠标移动到任意元素,都会发现其变成红色,代表其被选中。

当我们选中pushbutton后,继续拖动鼠标指向上面的lineedit,会发现由pushbutton出现一个箭头指向了lineedit,代表pushbutton的动作会对lineedit进行操作。

随即会弹出一个配置连接窗口。左边的是pushbutton的操作,我们选择clicked(),即点击pushbutton。

右边是对lineedit的操作,我们选择clear(),即清楚lineedit中的内容。

最后我们点击确定。

保存完成后,我们在PyQt中的操作就已经完成了。保存的文件名我们命名为test,PyQt生成的设计文件后缀是.ui。


作为Python开发者,你迟早都会用到图形用户界面来开发应用。本文将推李模荐一些 Python GUI 框架,希望对你有所帮助。

Python 的 UI 开发工具包 Kivy(推荐学习:Python视频教程)
Kivy是一个开源工具包能够让使用相同源代码创建的程序能跨平台运行。它主要关注创新型用户界面开发,如:多点触摸应用程序。Kivy还提供一个多点触摸鼠标模拟器。当前支持的平台包括:Linux、Windows、Mac OS X和Android。
Kivy拥有能够处理动画、缓存、手势、绘图等功能。它还内置许多用户界面控件如:按纽、摄影机、表格、Slider和树形控件等。
Python 的 GUI 开发工具 Flexx
Flexx 是一个纯 Python 工具包,用来创建图形化界面应用程序。其使用 Web 技术进行界面的渲染。你可以用 Flexx 来创建桌面应用,同时也可以导出一个应用到独立的 HTML 文档。因为使用纯 Python 开发,所以 Flexx 是跨平台的。只需要有 Python 和浏览器就可以运行。如果是使用桌面模式运行,推荐使用 Firefox 。
Qt库的Python绑定 PyQt
PyQt是Qt库的Python版本。PyQt3支持Qt1到Qt3。 PyQt4支持Qt4。它的首次发布也是在1998年,但是当时它叫 PyKDE,因为开始的时候SIP和PyQt没有分开。PyQt是用SIP写的。PyQt 提供 GPL版和商业版。
Python图形开发包 wxPython
wxPython 是 Python 语言的一套优秀的 GUI 图形库,允许 Python 程序员很方便的创建完整的、功能键全的 GUI 用户界面。 wxPython 是作为优秀的跨平台 GUI 库 wxWidgets 的 Python 封装和 Python 模块的方式提供给用户的。
就如同Python和wxWidgets一样,wxPython也是一款开源软件,并且具有非常优秀的跨平台能力,能够运行在32位windows、绝大多数的Unix或类Unix系统、Macintosh OS X上。
Tk图形用户界面 Tkinter
Tkinter(也叫Tk接口)是Tk图形用户界面工具包标准的Python接口。Tk是一个轻量级的跨平台图形用户界面(GUI)开发工具。Tk和Tkinter可以运行在大多数的Unix平台、Windows、和Macintosh系统。
Tkinter 由一定数量的租扰雀模块组成。Tkinter位于一个名弊早为_tkinter(较早的版本名为tkinter)的二进制模块中 。Tkinter包含了对Tk的低 级接口模块,低级接口并不会被应用级程序员直接使用,通常是一个共享库(或DLL),但是在一些情况下它也被Python解释器静态链接。
Pywin32
Windows Pywin32允许你像VC一样的形式来使用PYTHON开发win32应用。代码风格可以类似win32 sdk,也可以类似MFC,由你选择。如果你仍不放弃vc一样的代码过程在python下,那么这就是一个不错的选择。
Python图形界面开发包 PyGTK
PyGTK让你用Python轻松创建具有图形用户界面的程序.底层的GTK+提供了各式的可视元素和功能,如果需要,你能开发在GNOME桌面系统运行的功能完整的软件.
PyGTK真正具有跨平台性,它能不加修改地,稳定运行各种操作系统之上,如Linux,Windows,MacOS等.除了简单易用和快速的原型开发能力外,PyGTK还有一流的处理本地化语言的独特功能.
用python快速开发绚丽桌面程序 pyui4win
pyui4win是一个开源的采用自绘技术的界面库。支持C++和python。用它可以很容易实现QQ和360安全卫士这样的绚丽界面。而且,pyui4win有所见即所得界面设计器,让C++开发人员和python开发人员直接用
设计工具设计界面,而不用关心界面如何生成和运行,可以显著缩短界面开发时间。在pyui4win中,界面甚至可以完全交给美工去处理,开发人员可以只负责处理业务逻辑,把开发人员彻底从繁杂的界面处理中解放出来。
更多Python相关技术文章,请访问Python教程栏目进行学习!

4、Python tkinter能做出好看的图形界面么

PyQt,一个基于Qt的Python接口包,可以直接使用Qt的控件薯轿茄,还可以使用QSS进行界面美化,下面我简单介绍一下这个包的安装和使用,实验环境Win7+Python3.6+PyCharm5.0,主要内容如下:

1.首先数察,安装PyQt,这个直接在cmd窗口输入命令“pip install pyqt5”就行,如下,由于安装包比较大,所以需要等待一会儿:

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文帆腊件,然后在程序中加载就行):

这里我新建了一个简单的窗口程序,一个登录页面对话框,2个QLabel,2个QLineEdit和2个QPushButton,如下,设计完成后,可以直接编辑对应控件的styleSheet属性,利用QSS(类似CSS)对控件进行美化,也可以在代码中进行详细美化设计(如果美化比较复杂的话,可以专门编写QSS文件,然后在程序中加载就行):

设计完成的UI界面,可以直接使用自带转化工具pyuic5转化为Python程序(命令pyuic5 -o py文件 ui文件,如pyuic5 -o ),如下,就是刚才设计的UI界面的Python代码:

这里我们再添加一下main函数,直接创建上面类的对象,显示对话框就行,如下:

点击运行这个程序,效果如下,和上面设计的一样,非常方便:

本文所演示的的可视化方法

散点图(Scatterplot)

直方图(Histogram)

小提琴图(Violinplot)

特征两两对比图(Pairplot)

安德鲁斯曲线(Andrewscurves)

核密度图(Kerneldensitye

物联沃分享整理
物联沃-IOTWORD物联网 » Python最简单的UI界面构建方法,学习如何使用Python编写界面

发表评论