Python操作Excel表格,xlwt模块的使用

时间:2024-04-25 14:30:57

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")

还有一种快捷的设置风格的方式,上述代码设置了一些字体风格,暂时没有找到设置背景色的,以后如果找到可以更新过来

具体的字体颜色和背景色代号可以参看图片,这是源代码输出的测试表格截图

Python操作Excel表格,xlwt模块的使用Python操作Excel表格,xlwt模块的使用

Python操作Excel表格,xlwt模块的使用

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的操作,记住,写入了信息最后一定要保存表格才行。