链接地址:https://www.cnblogs.com/iamjianghao/p/10826297.html
# coding:utf-8 import xlrd from xlutils.copy import copy def fix_excel(index, name, infos): # 打开想要更改的excel文件,保留原格式 old_excel = xlrd.open_workbook('app/templates/xxx信息表.xls', formatting_info=True) # 将操作文件对象拷贝,变成可写的workbook对象 new_excel = copy(old_excel) ws_info_map = {} for i in range(1, 13): if i == 7: continue if i > 7: ws_info_map[i] = infos[i - 2] continue ws_info_map[i] = infos[i - 1] # 获得第一个sheet的对象,就是excel表中的sheet0,sheet1... ws = new_excel.get_sheet(int(index)) # 设置单元格的边框,上下左右都是实线 borders = xlwt.Borders() borders.top = xlwt.Borders.THIN borders.bottom = xlwt.Borders.THIN borders.right = xlwt.Borders.THIN borders.left = xlwt.Borders.THIN # 设置单元格样式 style = xlwt.XFStyle() # 将边框属性赋值给单元格样式 style.borders = borders # 写入数据 可以可以,就是这个模板了 for index, value in ws_info_map.items(): # 写入单元格数据的时候,调用单元格的样式设置 ws.write(index, 2, value, style=style) # 另存为excel文件,并将文件命名 new_excel.save(''.join(['./', name, '信息表', '.xls']))