首页 > 编程 > Python > 正文

python中使用 xlwt 操作excel的常见方法与问题

2020-02-16 00:38:07
字体:
来源:转载
供稿:网友

前言

Python可以操作Excel的模块不止一种,我习惯使用的写入模块是xlwt(一般都是读写模块分开的)

python中使用xlwt操作excel非常方,和Java使用调框架apache poi相比这就是天堂啊,下面话不多说了,来一起看看详细的介绍吧

一.安装xlwt模块

pip3 install xlwt

二.简单使用xlwt

import xlwt #导入模块workbook = xlwt.Workbook(encoding='utf-8') #创建workbook 对象worksheet = workbook.add_sheet('sheet1') #创建工作表sheetworksheet.write(0, 0, 'hello') #往表中写内容,第一各参数 行,第二个参数列,第三个参数内容workbook.save('students.xls') #保存表为students.xls#在Java中使用poi操作excel 在创建workbook对象的时候就需要写好表名,创建workbook对象完成后#这个表就已经存在,但是使用xlwt 需要在最后调用保存的时候为表命名,并且只有调入save方法后才会#创建表

三.为内容设置style

workbook = xlwt.Workbook(encoding='utf-8')worksheet = workbook.add_sheet('sheet1')#设置字体样式font = xlwt.Font()#字体font.name = 'Time New Roman'#加粗font.bold = True#下划线font.underline = True#斜体font.italic = True#创建stylestyle = xlwt.XFStyle()style.font = font#根据样式创建workbookworksheet.write(0, 1, 'world', style)workbook.save('students.xls')

四.合并单元格

使用xlwt 合并单元格时不用像poi通过style来设置,直接创建和并单元格就可以,

workbook = xlwt.Workbook(encoding='utf-8')worksheet = workbook.add_sheet('sheet1')#通过worksheet调用merge()创建合并单元格#第一个和第二个参数单表行合并,第三个和第四个参数列合并,#合并第0列到第2列的单元格worksheet.write_merge(0, 0, 0, 2, 'first merge')#合并第1行第2行第一列的单元格worksheet.write_merge(0, 1, 0, 0, 'first merge')workbook.save('students.xls')

如果需要了解具体调合并单元格规则就自己试着合并,查看合并效果.才能清晰明了

五.设置单元格的对齐方式

workbook = xlwt.Workbook(encoding='utf-8')worksheet = workbook.add_sheet('sheet1')alignment = xlwt.Alignment()# 水平居中alignment.horz = xlwt.Alignment.HORZ_CENTER# 垂直居中alignment.vert = xlwt.Alignment.VERT_CENTERstyle = xlwt.XFStyle()style.alignment = alignment#设置单元格宽度worksheet.col(0).width = 6666#设置单元格的高度worksheet.row(0).height_mismatch = Trueworksheet.row(0).height = 1000worksheet.write(0, 0, 'hello world', style)workbook.save('center.xls')

六.设置单元格调边框

workbook = xlwt.Workbook(encoding='utf-8')worksheet = workbook.add_sheet('sheet1')border = xlwt.Borders()# DASHED虚线# NO_LINE没有# THIN实线border.left = xlwt.Borders.THIN# 设置颜色border.left_coloure = 0x40bborder.right = xlwt.Borders.THINborder.right_colour = 0x40bborder.top = xlwt.Borders.THINborder.top_colour = 0x40bborder.bottom = xlwt.Borders.THINborder.bottom_colour = 0x40bstyle = xlwt.XFStyle()style.borders = borderworksheet.write(0, 0, 'love', style)workbook.save('dashed.xls')            
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表