导出csv文件时如何从tablewidget获取项目

时间:2019-06-13 03:42:02

标签: python export-to-csv qtablewidget

当我尝试从tablewidget导出csv文件时,导出的项目不是我想要的。    例如:我要:苹果,香蕉,....        实际上:((,....

1)UI包含1个listwidget和1个tablewidget。 2)根据单击listwidget项,tablewidget显示不同的项。

这是代码

def itemActivated_export_csv(self, filename):
   for row in range(self.tableWidget.rowCount()):
       for column in range(self.tableWidget.columnCount()):
           myitem = self.tableWidget.item(row,column)
           if myitem is None:
               item = QtGui.QStandardItem("")
               self.tableWidget.setItem(row, column, item)
   fileName, _ = QtWidgets.QFileDialog.getSaveFileName(None, "Save File", 
                   (QtCore.QDir.homePath() + "/" + self.fname + ".csv"),"CSV Files (*.csv)")
   if fileName:
       print(fileName)
       f = open(fileName, 'w')
       with f:
           writer = csv.writer(f, delimiter = '\t')
           for rowNumber in range(self.tableWidget.rowCount()):
                fields = [((self.tableWidget.rowCount, self.tableWidget.columnCount),
                                    QtCore.Qt.DisplayRole)
                for columnNumber in range(self.tableWidget.columnCount())]
               writer.writerow(fields)
           self.fname = os.path.splitext(str(fileName))[0].split("/")[0]

我希望在csv文件中获得准确的项目,如下例所示。 1)单击“水果”在listwidget并导出CSV文件-> CSV文件有苹果,香蕉,...- 2)在listwidget中单击“动物”并导出csv文件-> csv文件中有狮子,老虎,...

0 个答案:

没有答案