0
点赞
收藏
分享

微信扫一扫

python(模块)xlwt

以沫的窝 2022-04-14 阅读 33
python

目录

一、xlwt简介

xlwt仅支持 xls 格式的exce,只能新建xls后写入xls文件

二、xlwt语法

1、模块安装

pip3 install xlwt

2、模块导入

import xlwt

3、向xls文件中写入内容

import xlwt

# 创建一个workbook对象,就相当于创建了一个Excel文件
workbook = xlwt.Workbook(encoding='utf-8',style_compression=0)  # encoding:设置编码,可写中文;style_compression:是否压缩,不常用

# 创建一个sheet对象,相当于创建一个sheet页
worksheet = workbook.add_sheet('这是sheet1',cell_overwrite_ok=True) # cell_overwrite_ok:是否可以覆盖单元格,默认为False

# 向sheet页中添加数据:worksheet.write(行,列,值)
worksheet.write(0,0,'我要发财啦')  # 第1行第1列写入数据

# 将以上内容保存到指定的文件中
workbook.save('测试文件.xls')

在这里插入图片描述

4、设置写入文件的格式

4.1 字体设置(font)

import xlwt

workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('这是sheet1')

style = xlwt.XFStyle()# 初始化样式
font = xlwt.Font()# 为样式创建字体(font)

# 指定字体的具体属性(仅列出常用属性)
font.name = '宋'   # 指定字体
font.height = 300   # 和excel字体大小比例是1:20
font.bold = True    # 字体是否加粗
font.underline = True   # 字体是否下划线
font.struck_out = True  # 字体是否有横线
font.italic = True  # 是否斜体字
font.colour_index = 4   # 字体颜色

# 设定字体样式
style.font = font

# 向sheet页中添加数据
worksheet.write(0,0,'无样式文本')
worksheet.write(0,1,'有样式文本',style)

workbook.save('测试文件.xls')

在这里插入图片描述

说明:

  • 字体大小
    和excel字体大小比例是1:20,假设需要15号字体大小,则需要设置成300

  • 字体颜色对照图
    在这里插入图片描述

4.2 背景颜色设置(pattern)

import xlwt

workbook  = xlwt.Workbook(encoding='utf-8')
worksheet = workbook .add_sheet('这是sheet1')
worksheet.write(0,0,'无样式文本')

# 初始化样式
style = xlwt.XFStyle()

# 1. 为样式创建字体(font)
font = xlwt.Font()
# 指定字体的具体属性(仅列出常用属性)
font.name = '宋'   # 指定字体
font.height = 300   # 和excel字体大小比例是1:20
font.bold = True    # 字体是否加粗
font.underline = True   # 字体是否下划线
font.struck_out = True  # 字体是否有横线
font.italic = True  # 是否斜体字
font.colour_index = 4   # 字体颜色
# 设置style的各个属性的样式
style.font = font   # 设定字体样式
worksheet.write(2,0,'有样式文本(字体样式)',style)

# 2. 为样式创建背景图案(pattern)
pattern = xlwt.Pattern()
# 指定背景颜色
pattern.pattern = xlwt.Pattern.SOLID_PATTERN  # 设置背景颜色模式
pattern.pattern_fore_colour = 3    # 不同的值代表不同颜色背景
# 设置style的各个属性的样式
style.pattern = pattern # 设定背景图案样式
worksheet.write(4,0,'有样式文本(字体样式+背景图案样式)',style)

workbook .save('测试文件.xls')

在这里插入图片描述

4.3 边框设置(borders)

import xlwt

workbook  = xlwt.Workbook(encoding='utf-8')
worksheet = workbook .add_sheet('这是sheet1')

# 初始化样式
style = xlwt.XFStyle()
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
# 写入数据
worksheet.write(0,0,'无样式文本')
worksheet.write(2,0,'有样式文本(边框样式)',style)
# 保存.xls
workbook.save('测试文件.xls')

在这里插入图片描述

4.4 对齐方式设置(alignment)

import xlwt

workbook  = xlwt.Workbook(encoding='utf-8')
worksheet = workbook .add_sheet('这是sheet1')

# 初始化样式
style = xlwt.XFStyle()

# 对齐方式的设置(alignment)
alignment = xlwt.Alignment()

# 设置具体的对齐方式 : vert代表垂直对齐方式;horz代表水平对齐方式
alignment.vert = 0x01   # 0x00 上端对齐;0x01 居中对齐(垂直方向上);0x02 底端对齐
alignment.horz = 0x03   # 0x01 左端对齐;0x02 居中对齐(水平方向上);0x03 右端对齐

# 设定设定对齐方式
style.alignment = alignment

# 写入数据
worksheet.write(0,0,'无样式文本')
worksheet.write(2,0,'有样式文本(设定对齐方式)',style)

# 保存.xls
workbook.save('测试文件.xls')

在这里插入图片描述

4.5 单元格格式(num_format_str)

日期数据写入excel,单元格为自定义的日期格式

import xlwt
from datetime import datetime

workbook  = xlwt.Workbook(encoding='utf-8')
worksheet = workbook .add_sheet('这是sheet1')

date_str = '2022-04-12'

style = xlwt.XFStyle()
num_format_str = 'yyyy/MM/dd'
style.num_format_str = num_format_str

# 写入数据
worksheet.write(0,0,date_str)
worksheet.write(2,0,datetime.strptime(date_str,'%Y-%m-%d').date(),style)

# 保存.xls
workbook.save('测试文件.xls')

在这里插入图片描述

在这里插入图片描述

4.6 列宽和行高

import xlwt
from datetime import datetime

workbook  = xlwt.Workbook(encoding='utf-8')
worksheet = workbook .add_sheet('这是sheet1')

# 写入数据
worksheet.write(0,0,'我是个很长的字符')
worksheet.write(0,4,'我也是个很长的字符哦')
worksheet.col(4).width=256*20 # 设计第4列宽度

# 保存.xls
workbook.save('测试文件.xls')

在这里插入图片描述

三、实例应用

四、参考资料

python模块 之 xlwt模块

举报

相关推荐

0 条评论