使用 xlsxwriter 将数据从 Dataframe 写入 Excel 表时出错

我有一个数据框,我正在尝试使用 xlsxwriter 模块将其写入 Excel 工作表。


下面给出的是我的数据框的样子:


prod_id,prod_name,price,units

prod_a,apple,100,10

prod_b,mango,10,123

prod_c,orange,12,14

我正在尝试将上述数据框编写为如下所示:


# Pulling data for the sheet

row = 1

col = 0


# Iterate through the array you have and unpack the tuple at each index

for 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)


qq_笑_17
浏览 502回答 1
1回答

Cats萌萌

错误是因为,您正在循环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这应该有效。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python