PyQt5快速上手基础篇11-表格形式显示统计数据在textBrowser上
发布日期:2021-05-15 00:02:34 浏览次数:14 分类:精选文章

本文共 2161 字,大约阅读时间需要 7 分钟。

前言

本节我们学习使用Python的prettytable的用法,使用prettytable可以非常方便的使用表格形式打印统计数据。

一、基础知识

1.prettytable简介

PrettyTable是python中的一个第三方库,主要用来将数据格式化成表格形式显示。

2.安装

pip3 install PrettyTable

3.常用函数说明

在这里插入图片描述

二、实例

1. QT Designer设计UI

复制“ pyqt5快速上手基础篇8-菜单栏、工具栏和状态栏“中image文件夹内容和action_tool.ui,并修改action_tool.ui名字为chart.ui,用Qt Designer打开如下所示:

在这里插入图片描述
注意串口combox没有任何数据显示,是因为我们没有使用Qt Designer为其添加item。

2 将*.ui转换为ui_chart.py

进入run.py目录,输入如下命令:

pyuic5 -o ui_chart.py chart.ui

3 编写python程序

# encoding=utf-8import sysimport PyQt5.QtWidgets as qwimport PyQt5.QtCore as qcimport prettytable as ptimport ui_chart class myForm(qw.QMainWindow, ui_chart.Ui_MainWindow): def __init__(self): super().__init__() self.setupUi(self) #init gui self.statusbar.showMessage("status:ok") self.pushButton.clicked.connect(self.btn_test_cb)  def btn_test_cb(self):        tb = pt.PrettyTable()        tb.field_names = ["姓名", "语文", "数学", "英语"]        tb.add_row(["王二", 80, 90, 70])        tb.add_row(["李三", 85, 95, 80])        tb.add_row(["赵四", 90, 75, 86]) print(tb)        text_data = str(tb) self.textBrowser.insertPlainText(text_data) self.textBrowser.insertPlainText("\r\n") self.textBrowser.insertPlainText("clear_rows后数据如下\r\n")        tb.clear_rows() print(tb)        text_data = str(tb) self.textBrowser.insertPlainText(text_data) self.textBrowser.insertPlainText("\r\n重新add_row后数据如下\r\n")        tb.add_row(["刘无", 85, 95, 80])        tb.add_row(["杨六", 90, 75, 86]) print(tb)        text_data = str(tb) self.textBrowser.insertPlainText(text_data) self.textBrowser.insertPlainText("\r\nclear后数据如下\r\n")        tb.clear() print(tb)        text_data = str(tb) self.textBrowser.insertPlainText(text_data)if __name__ == '__main__':    app = qw.QApplication(sys.argv)    w1 = myForm()    w1.show()    app.exec_()

上述程序实现,当点击发送按钮的时候,首先初始化一个表格数据,显示在textBrowser上,然后调用clear_rows()清楚表格数据,保留表格标题,然后重新添加数据并显示,最后调用clear()清楚表格,销毁标题和数据内容。

三、运行

进入文件目录,输入python3 run.py,即可弹出上述用QT Designer设计出来的MainWindow页面。

在这里插入图片描述
到此,我们实现了在pyqt上的textBrower上显示表格形式数据。

四、结语

(1) PrettyTable

注意PrettyTable是Python的一个第三方包,所以pyqt5支持,直接在控制台写纯python脚本也是可以的。

(2)获取资料

如您在使用过程中有任何问题,请加QQ群进一步交流。

QQ交流群:906015840 (备注:物联网项目交流)

项目实战:

扫码关注公众号:物联网客栈,回复pyqt5即可获取本节源码。

在这里插入图片描述
一叶孤沙出品:一沙一世界,一叶一菩提

上一篇:pyqt5快速上手基础篇12-使用Pyinstaller打包应用程序
下一篇:PyQt5快速上手基础篇10-QSettings用法

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月23日 18时12分28秒