Python – 将现有工作簿的格式应用于其他工作簿

我在Python中编写代码比较新,这是我的问题:1-当我更新现有.xlsx文件(使用openpyxl)的数据时,结果是一个.xlsx,它丢失了以前的所有格式。 我也尝试过使用.xls(使用xlwt和xlrd),但没有任何改变。 2-因此,我决定保留这个未格式化的结果文件,并应用模板.xls(x)文件的所有格式。

有没有一个简单的方法来保存第1步的格式? 如果不是,我怎样才能实现第二步?

PS:我试图用xlutils.styles处理样式…但是我没有设法…

谢谢你的帮助!

您可以使用xlrd格式化单元格的格式,并将其设置为您在xlwt中编写的单元格的样式。 单元格的xf_index属性是XFStyle对象的一个​​实例,可以直接转储到write方法的style参数中,如下所示:

 import xlwt,xlrd readbook = xlrd.open_workbook('book.xls', formatting_info=True) readsheet = readbook.sheet_by_index(0) cell = sheet.cell(0,0) writebook = xlwt.Workbook() writesheet = writebook.add_sheet('sheet1') writesheet.write(0,0,'First Cell', cell.xf_index) 

从那里你可以迭代匹配每个单元格的格式,或者你可以写每个格式的行或列,如下所示: https : //github.com/python-excel/xlwt/blob/master/xlwt/examples/row_styles。 PY