我使用xlrd导入excel文件。没有关于如何将这些数据填充到QTableWidget中的教程。导入excel的代码:
import xlrd
book = xlrd.open_workbook('bioreactorfinal.xlsx')
sheet = book.sheets() [1]
data = [[sheet.cell_value(r,c) for c in range (sheet.ncols)]for r in range(sheet.nrows)]
print(data)
QTableWidget代码
self.tableWidget.setColumnCount(32)
self.tableWidget.setRowCount(32)
for row, columnvalues in enumerate(data):
for column, value in enumerate(columnvalues):
item = QtGui.QTableWidgetItem(value)
self.tableWidget.setItem(row, column, item)
发布于 2015-12-22 00:45:21
为了将其填充到QTableWidget中,需要将其分为几个步骤:
如何读取标头在某种程度上取决于您的期望,如果您使没有对输入数据的假设,那么您将没有标题。
在这里,我将假设标题位于第一行。从您离开数据的位置开始,下面是如何从数据中填充QTableWidget:
from PySide import QtGui
data = [[sheet.cell_value(r,c) for c in range (sheet.ncols)] for r in range(sheet.nrows)]
app = QtGui.QApplication([])
mytable = QtGui.QTableWidget()
# skip these lines if you don't have headers
headers = data[0]
data = data[1:]
self.setHorizontalHeaderLabels(headers)
# stop skipping lines
for row, columnvalues in enumerate(data):
for column, value in enumerate(columnvalues):
item = QtGui.QTableWidgetItem(value)
mytable.setItem(row, column, item)
这只是一个非常基本的模板,但是对于如何将一个Excel工作表转换为一个QTableWidget,这是一个大致的想法。然后,可以将其嵌入到QMainWindow或QDialog中。
有几件事要小心:
https://stackoverflow.com/questions/34406650
复制相似问题