我正在try 将数据从QTableWidget传递到Excel.为什么Excel中只写入表的最后一行?(打印时,显示完整的表格).

rowCount = self.QTableWidget.rowCount()
columnCount = 5

for row in range(rowCount):
    rowData = []
    for column in range(columnCount):
        widgetItem = self.QTableWidget.item(row, column)
        if widgetItem and widgetItem.text:
            rowData.append(widgetItem.text())
        else:
            rowData.append('NULL')
    print(rowData)

df = pd.DataFrame(columns=rowData)
df.to_excel('Table.xlsx', index=False)

推荐答案

您需要创建一个列表列表来容纳所有行:

rowCount = self.QTableWidget.rowCount()
columnCount = 5

# add this line
data = []

for row in range(rowCount):
    rowData = []
    for column in range(columnCount):
        widgetItem = self.QTableWidget.item(row, column)
        if widgetItem and widgetItem.text:
            rowData.append(widgetItem.text())
        else:
            rowData.append('NULL')
    print(rowData)

    # add this line
    data.append(rowData)

# change these two lines
df = pd.DataFrame(data)
df.to_excel('Table.xlsx', header=False, index=False)

Python相关问答推荐

在内部列表上滚动窗口

连接两个具有不同标题的收件箱

numba jitClass,记录类型为字符串

Python中的嵌套Ruby哈希

如何从具有不同len的列表字典中创建摘要表?

在线条上绘制表面

当从Docker的--env-file参数读取Python中的环境变量时,每个\n都会添加一个\'.如何没有额外的?

将输入聚合到统一词典中

如何并行化/加速并行numba代码?

计算天数

为什么Django管理页面和我的页面的其他CSS文件和图片都找不到?'

合并与拼接并举

在电影中向西北方向对齐""

当HTTP 201响应包含 Big Data 的POST请求时,应该是什么?  

如何在PythonPandas 中对同一个浮动列进行逐行划分?

Pandas:计数器的滚动和,复位

将字节序列解码为Unicode字符串

设置索引值每隔17行左右更改的索引

在MongoDB文档中仅返回数组字段

是否从Python调用SHGetKnownFolderPath?