主要使用xlwt扩展包
- import xlwt
-
创建workbook(Excel文件)
- workbook = xlwt.Workbook(encoding = 'utf-8')
-
添加sheet
- sheet = workbook.add_sheet('sheetname')
-
写入数据
- #格式:sheet.write(m,n,data),表示在第m行n列写入数据data
- #注意:m和n从0开始
- sheet.write(1,0,'第一行第0列')
-
合并单元格,并写入数据
- #格式:#sheet.write_merge(m1, m2, n1, n2, data),表示合并第m1到m2行的n1到n2列,并写入数据data
- sheet.write_merge(2, 4, 4, 5, '合并')
-
设置字体
- font = xlwt.Font()
-
字体类型
- font.name = '宋体'
-
字体大小,11为字号,20为衡量单位
- font.height = 20*11
-
字体加粗
- font.bold = False
-
设置边框
- borders = xlwt.Borders()
- # 细实线:1,小粗实线:2,细虚线:3,中细虚线:4,大粗实线:5,双线:6,细点虚线:7
- # 大粗虚线:8,细点划线:9,粗点划线:10,细双点划线:11,粗双点划线:12,斜点划线:13
- borders.left = 1
- borders.right = 1
- borders.top = 1
- borders.bottom = 1
-
#设置单元格对齐方式
- alignment = xlwt.Alignment()
- # 0x01(左端对齐)、0x02(水平方向上居中对齐)、0x03(右端对齐)
- alignment.horz = 0x02
- # 0x00(上端对齐)、 0x01(垂直方向上居中对齐)、0x02(底端对齐)
- alignment.vert = 0x01
-
#初始化样式
- style0 = xlwt.XFStyle()
-
- style0.font = font
- style0.borders = borders
- style0.alignment = alignment
-
设置列宽,一个中文等于两个英文等于两个字符,11为字符数,256为衡量单位
- #格式:sheet.col(n).width = 11 * 256 ,表示第n列的宽度为11个字符
- sheet.col(0).width = 50 * 256
-
设置行高
- #设置第0行的高度为800
- sheet.row(0).height_mismatch = True
- sheet.row(0).height = 800
-
以设置的样本格式写入数据
- sheet.write(1,0,'第一行第0列,带格式写入',style=style0)
-
保持workbook文件
- #注意:xlwt只能报错为xls格式,保存为xlsx格式不会报错,但是打开excel文件时将报错
- workbook.save(r'excelname.xls')
-
如果想要存储为xlsx格式,可以先存储为xls格式,然后再转为xlsx格式,python将xls格式文件转为xlxs格式文件代码参考链接:https://www.cdsy.xyz/computer/programme/Python/230413/cd42731.html