我有一个数据框,我正在尝试使用 xlsxwriter 模块将其写入 Excel 工作表。下面给出的是我的数据框的样子:prod_id,prod_name,price,unitsprod_a,apple,100,10prod_b,mango,10,123prod_c,orange,12,14我正在尝试将上述数据框编写为如下所示:# Pulling data for the sheetrow = 1col = 0# Iterate through the array you have and unpack the tuple at each indexfor elm1, elm2, elm3, elm4 in df: worksheet.write(row, col, elm1, number_format) worksheet.write(row, col + 1, elm2, number_format) worksheet.write(row, col + 2, elm3, number_format) worksheet.write(row, col + 3, elm4, number_format) row += 1它抛出一个错误for elm1, elm2, elm3, elm4 in df:ValueError: too many values to unpack (expected 4)
1 回答

Cats萌萌
TA贡献1805条经验 获得超9个赞
错误是因为,您正在循环df使用多个变量。相反,您应该只有一个变量。
如果我理解正确,您可以像这样调整循环:
for row in df.itertuples():
elm1,elm2,elm3,elm4 = row[1], row[2], row[3], row[4]
worksheet.write(row, col, elm1, number_format)
worksheet.write(row, col + 1, elm2, number_format)
worksheet.write(row, col + 2, elm3, number_format)
worksheet.write(row, col + 3, elm4, number_format)
row += 1
这应该有效。
添加回答
举报
0/150
提交
取消