【发布时间】:2017-12-19 14:40:36
【问题描述】:
我创建了一个 xls 文件,我在其中将一些用户输入写入单元格。到目前为止一切顺利,该程序有效;它写了第一行。但是当我再次运行程序而不是将其写入第一个行之上的行时。我正在尝试了解如何使其将新行附加到 excel 表中保存并关闭它等
import xlsxwriter
workbook = xlsxwriter.Workbook("test.xlsx",)
worksheet = workbook.add_worksheet()
row = 0
col = 0
worksheet.write(row, col, 'odhgos')
worksheet.write(row, col + 1, 'e/p')
worksheet.write(row, col + 2, 'dromologio')
worksheet.write(row, col + 3, 'ora')
row += 1
worksheet.write_string(row, col, odigosou)
worksheet.write_string(row, col + 1, dromou)
worksheet.write_string(row, col + 2, dromologio)
worksheet.write_string(row, col + 3, ora)
workbook.close()
使用我创建的这段代码,我可以在文件中写入内容,但是如何让它在现有工作表中追加一行。我看过的所有教程,我研究过的所有说明,都不起作用;我显然做错了什么,但我无法发现它。
【问题讨论】:
-
您不能使用
xlsxwriter附加到现有文件。您可以做的是读取文件,将其写入新文件,然后在其上追加。你可以使用openpyxl,它可以在本地执行此操作,或者使用xlrd之类的内容读取数据。 -
poo..... 我现在真的很愚蠢,非常感谢你,伙计 4 天的工作又回到了 0 :D 你不喜欢编码吗?再次非常感谢你:)
-
如果您正在运行上面的脚本,您可能会收到此错误:
NameError: name 'odigosou'。如果您在所有worksheet.write_string()'s中引用第三个参数,您的脚本应该产生两行。
标签: python excel xlsxwriter