前言
为使python读取excel相关格式文件内容,需使用xlutils模块来处理
模块使用步骤
导入模块
pip install xlutils
打开并复制工作簿
readExcelWorkbook = xlrd.open_workbook(“工作簿名称”, formatting_info=True)
copyExcel = copy(readExcelWorkbook)
获取表
getSheet0 = copyExcel.get_sheet(0)
设置格式
style = xlwt.XFStyle()
… …
写入表格内容
getSheet0.write(1, 5, “dev”, style)
保存文件
copyExcel.save(“modify.xls”)
表格样式可参考下图所示
示例演示
表格需求
处理前:
处理后:
- 注:
1. 字体为Arial,不加粗,字号为10
2. 细线框
3. 水平垂直居中对齐
代码
from xlutils.copy import copy
import xlwt
import xlrd
readExcelWorkbook = xlrd.open_workbook("different_mysql_version_contrast.xls", formatting_info=True)
copyExcel = copy(readExcelWorkbook)
getSheet0 = copyExcel.get_sheet(0)
# 创建样式
style = xlwt.XFStyle()
# 字体为Arial,不加粗,字号为10
font = xlwt.Font()
font.name = "Arial"
font.bold = False # 不加粗
font.height = 200 # 字体宽度 = 自号 * 表格宽度(默认为20)
# 加入字体样式
style.font = font
# 表格细线框
borders = xlwt.Borders()
borders.left = xlwt.Borders.THIN
borders.right = xlwt.Borders.THIN
borders.top = xlwt.Borders.THIN
borders.bottom = xlwt.Borders.THIN
# 加入线框样式
style.borders = borders
# 水平垂直居中对齐
alignment = xlwt.Alignment()
alignment.horz = xlwt.Alignment.HORZ_CENTER
alignment.vert = xlwt.Alignment.VERT_CENTER
# 加入对齐样式
style.alignment = alignment
getSheet0.write(1, 5, "dev", style)
getSheet0.write(2, 5, "uat", style)
getSheet0.write(3, 5, "prod", style)
copyExcel.save("modify.xls")
结语
参考python官方指导手册: python-excel