'Export QTableWidget to CSV including headers

The block of code below works and saves whatever is in my table-widget to a csv file, but it does not include the horizontal headers from the table-widget.

How do I include those?

path = QFileDialog.getSaveFileName(self.tableWidget, 'Save CSV', os.getenv('HOME'), 'CSV(*.csv)')

if path[0] != '':
    with open(path[0], 'w') as csv_file:
        writer = csv.writer(csv_file, dialect='excel',lineterminator='\n')
        for row in range(self.tableWidget.rowCount()):
            row_data = []
            for column in range(self.tableWidget.columnCount()):
                item = self.tableWidget.item(row, column)
                if item is not None:
                    row_data.append(item.text())
                else:
                    row_data.append('')
            writer.writerow(row_data)


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source