我正在从多个EXCEL文件的不同列中提取数据,并希望使用Python 3中的xlsxwriter
将结果写入新工作簿的多个工作表中。
为此,我将结果写入列表的列表中,然后尝试将每个列表的列表写入一个新的工作表中,该工作表具有新的、不同的名称。
我想写的第一张新纸是这样的:
with xlsxwriter.Workbook('C:\\Users\\###\\NewEntities.xlsx') as workbook: #generate file xlsx
worksheet1 = workbook.add_worksheet("PERSONS")
for row_num, data in enumerate(pers_list_new):
try:
worksheet1.write_row(row_num, 0, data)
except:
pass
最后一个是这样的:
worksheet5 = workbook.add_worksheet("INSTITUTIONS")
for row_num, data in enumerate(inst_list_new):
try:
worksheet5.write_row(row_num, 0, data)
except:
pass
新的EXCEL文件创建正确,但只有INSTITUTIONS列表(工作表5)在输出文件中可见。看起来xlswriter
根本没有为每个列表添加新的工作表,而是覆盖了现有的工作表,以便只保留最后写入文件的工作表。由于我为新的工作表使用了不同的变量,并为它们指定了新的名称,我不知道为什么会发生这种情况。
我查看了xlswriter
文档,不幸的是没有找到答案。
1条答案
按热度按时间dgjrabp21#
下面是一个基于您的代码的工作示例:
输出,显示多个工作表: