Python可以操作Excel的模块不止一种,我习惯使用的写入模块是xlwt(一般都是读写模块分开的)
按照模块使用pip install xlwt 就行了,很常规的方式
直接进代码解析,本文源码
wk = xlwt.Workbook(encoding="utf-8")
sheet_test = wk.add_sheet("test")
第一句:创建一个工作簿,设置编码格式为“utf-8”,默认格式是ASCII,为了方便写入中文,一般都要设置成UTF-8
第二句:向工作簿中添加一个sheet表格,设置表格名称是'test'
wk.save("xlwt_test.xls")
保存:如果表格什么也不做,也可以直接保存,直接输入上面的代码,就创建了一个空的表格。
当然,既然创建表格当然是为了写入信息,所以这保存表格之前可以进行什么操作呢?
来看看吧
for c in range(5):
sheet_test.col(c).width = 256 * 20
上述代码是设置了列宽
col()代表的就是列,参数是指定的列,第一列是从0开始;width就是列的宽度,后面256*20表示的是字符数,20代表20个字符
font = xlwt.Font()
# font.name = "Arial" #字体名称
# font.bold = True # 字体加粗
font.height = 20 * 11 # 字体决定了行高,后面一个数字可以决定字体
font.colour_index = 2
style_1 = xlwt.XFStyle()
style_1.font =font
上述代码是先设置了一个字体,字体的属性有名称,是否加粗,字号和颜色等
然后添加一个风格样式style_1,将样式的字体设置成上面设置好的字体样式
sheet_test.write(0,0,"字体颜色代号{}".format(fsize),style_1)
晒黑写入信息到表格的函数是write()
第一个参数是行,从0开始
第二个参数是列,从0开始
第三个参数是写入的字符串对象
第四个参数可以选择是否添加,就是样式风格了,可以把之前设置好的样式添加进去,信息就会按照样式来写入了
patterni = xlwt.Pattern()
patterni.pattern = xlwt.Pattern.SOLID_PATTERN
patterni.pattern_fore_colour = 4
style_2 = xlwt.XFStyle()
style_2.pattern = patterni
当然,样式不止有字体,还有背景色和边框等,上述代码是用来设置背景色的,颜色的代号可以参见文章给的链接
style_3 = xlwt.easyxf("font: name Times New Roman,color-index 20,bold on")
还有一种快捷的设置风格的方式,上述代码设置了一些字体风格,暂时没有找到设置背景色的,以后如果找到可以更新过来
具体的字体颜色和背景色代号可以参看图片,这是源代码输出的测试表格截图
sheet_test.insert_bitmap("gakki.bmp",i,3,2,2,0.1,0.1)
然后看一下向表格中插入图片的方式(不过感觉这个方式很鸡肋,没什么用,为什么这么说呢,看代码的注释)
insert_bitmap(img, x, y, x1, y1, scale_x=0.1, scale_y=2)
img表示要插入的图像地址
x表示行,y表示列
x1,y1表示相对原来位置向下向右偏移的像素
scale_x,y表示相对原图宽高的比例,图片可放大缩小
最重点的是,图片格式必须是bmp格式才能插入成功,是不是很鸡肋?!!!
# 合并单元格测试
'''
write_merge(x, x + h, y, w + y, string, sytle)
x表示行,y表示列,w表示跨列个数,h表示跨行个数,string表示要写入的单元格内容,style表示单元格样式
注意,x,y,w,h,都是以0开始计算的
'''
sheet_test.write_merge(0,0+3,4,4+3,"合并测试")
接下来是Excel很有用的合并单元格操作了,注释解释了这个用法
以上就是一般写入Excel的操作,记住,写入了信息最后一定要保存表格才行。