Pyqt5:把tablewidget的数据导出到已有的excel中,不改变格式,只添加数据

导出文件存在一点缺陷,采用的是xlutils和xlwt模块。所以只能保存为xls文件

这里只有一部分程序

#设置边框
def styletest(borders,left,right,top,bottom):
    borders.left = left
    borders.right = right
    borders.top = top
    borders.bottom = bottom
    borders.bottom_colour = 0x3A
#打开文件,formatting_info=True保持原有格式
oldWb =xlrd.open_workbook('/Users/sr00117/Desktop/bom2.xls', formatting_info=True)
#设置excel的边框
borders = xlwt.Borders()
styletest(borders,1, 1, 1, 1)
style = xlwt.XFStyle()
style.borders = borders
#复制原有格式
newWb =copy(oldWb)
#得到excel工作表名
newWs =newWb.get_sheet(0)
#得出tableWidget2有多少行数据
rows = tableWidget2.rowCount()
for  i in range(rows):
    #因为是边读边写,所以每次写完后,要把上次存储的数据清空,存储下一行读取的数据
    mainList=[]
    #tablewidget一共有10列
    for j in range(
  • 3
    点赞
  • 75
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
pyqt5TableWidget是一个强大而且灵活的控件,可以让用户显示和编辑数据。在TableWidget,可以使用以下方法添加数据: 1. 通过代码添加行和列 使用以下代码可以添加一行和两列: ``` self.tableWidget.insertRow(0) self.tableWidget.setItem(0, 0, QTableWidgetItem("Hello")) self.tableWidget.setItem(0, 1, QTableWidgetItem("World")) ``` 其`insertRow()`方法用于添加一行,`setItem()`方法用于在指定位置(行列)添加数据项。 2. 通过读取文件添加数据 如果需要将文件数据添加TableWidget,可以通过以下代码实现: ``` with open('data.txt') as f: for i, line in enumerate(f): # 每行数据按照指定分隔符分割 row_data = line.strip().split(',') for j, item in enumerate(row_data): # 添加数据项 self.tableWidget.setItem(i, j, QTableWidgetItem(item)) ``` 以上代码用于打开名为"data.txt"的文件,在文件逐行读取数据并分割为分列数据,最后使用`setItem()`方法将分列数据添加到每行的对应列。 3. 通过数据添加数据 如果需要从数据读取数据添加TableWidget,可以使用以下代码: ``` database = QSqlDatabase.addDatabase('QSQLITE') database.setDatabaseName('mydatabase.db') if not database.open(): print("Unable to open database!") else: query = QSqlQuery() query.exec("SELECT * FROM mytable") row = 0 while query.next(): for column in range(0, query.record().count()): self.tableWidget.setItem(row, column, QTableWidgetItem(str(query.value(column)))) row += 1 database.close() ``` 以上代码用于连接名为"mydatabase.db"的SQLite数据库,执行SQL查询语句并读取结果,最后使用`setItem()`方法将结果添加TableWidget

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值