我有三张xlsx罚款,我有一个代码可以对它们进行排序但是我想按照我的方式而不是按名称排序:
import xlsxwriter
workbook = xlsxwriter.Workbook('test.xlsx')
sheet_names = ['Data1', 'Chart1', 'Data2', 'Chart2', 'Data3', 'Chart3']
for sheet_name in sheet_names:
workbook.add_worksheet(sheet_name)
# sort sheets based on name
workbook.worksheets_objs.sort(key=lambda x: x.name)
workbook.close()
表格我需要分类:
sheet_names = ['Data1', 'Chart1', 'Chart3', 'Chart2', 'Data3', 'Data2']
答案 0 :(得分:0)
你能尝试一下吗?它尝试对第二个数组中的索引进行排序。
import xlsxwriter
workbook = xlsxwriter.Workbook('test.xlsx')
sheet_names = ['Data1', 'Chart1', 'Data2', 'Chart2', 'Data3', 'Chart3']
for sheet_name in sheet_names:
workbook.add_worksheet(sheet_name)
new_sheet_names = ['Data1', 'Chart1', 'Chart3', 'Chart2', 'Data3', 'Data2']
# sort sheets based on name
workbook.worksheets_objs.sort(key=lambda x: new_sheet_names.index(x.name))
workbook.close()