XlsxWriter:创建新工作表
XlsxWriter: Creating new worksheets
我正在尝试创建新作品sheet,使用 XlsxWriter 将数据写入新的sheet,并在循环的每个新迭代中进行。
我的代码如下:
workbook = xlsxwriter.Workbook('Report.xlsx')
for i in range(0, len(list)):
worksheet = workbook.add_worksheet()
#Extract data from the list and add it to the excel sheet
workbook.close()
现在,这个方法的问题是我只看到一个作品sheet,而不是多个sheet作品。
我哪里错了?
根据评论的更正,即使 XlsxWriter API 允许在修改之间关闭工作簿,它只会在第一次关闭之前写入更改。
import xlsxwriter
import openpyxl
workbook = xlsxwriter.Workbook('test.xlsx')
for i in range(10):
workbook.add_worksheet()
workbook.close()
assert len(workbook.worksheets()) == 10
assert len(openpyxl.load_workbook('test.xlsx').sheetnames) == 1
workbook = xlsxwriter.Workbook('test.xlsx')
for i in range(10):
workbook.add_worksheet()
workbook.close()
assert len(workbook.worksheets()) == 10
assert len(openpyxl.load_workbook('test.xlsx').sheetnames) == 10
在所有工作簿修改之后,您需要将 workbook.close()
移出循环:
workbook = xlsxwriter.Workbook('Report.xlsx')
for i in range(0, len(list)):
worksheet = workbook.add_worksheet()
#Extract data from the list and add it to the excel sheet
workbook.close()
我正在尝试创建新作品sheet,使用 XlsxWriter 将数据写入新的sheet,并在循环的每个新迭代中进行。
我的代码如下:
workbook = xlsxwriter.Workbook('Report.xlsx')
for i in range(0, len(list)):
worksheet = workbook.add_worksheet()
#Extract data from the list and add it to the excel sheet
workbook.close()
现在,这个方法的问题是我只看到一个作品sheet,而不是多个sheet作品。
我哪里错了?
根据评论的更正,即使 XlsxWriter API 允许在修改之间关闭工作簿,它只会在第一次关闭之前写入更改。
import xlsxwriter
import openpyxl
workbook = xlsxwriter.Workbook('test.xlsx')
for i in range(10):
workbook.add_worksheet()
workbook.close()
assert len(workbook.worksheets()) == 10
assert len(openpyxl.load_workbook('test.xlsx').sheetnames) == 1
workbook = xlsxwriter.Workbook('test.xlsx')
for i in range(10):
workbook.add_worksheet()
workbook.close()
assert len(workbook.worksheets()) == 10
assert len(openpyxl.load_workbook('test.xlsx').sheetnames) == 10
在所有工作簿修改之后,您需要将 workbook.close()
移出循环:
workbook = xlsxwriter.Workbook('Report.xlsx')
for i in range(0, len(list)):
worksheet = workbook.add_worksheet()
#Extract data from the list and add it to the excel sheet
workbook.close()