广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python中xlwt模块的具体用法
  • 550
分享到

python中xlwt模块的具体用法

pythonxlwt模块 2023-02-23 17:02:20 550人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录一、前言二、基础操作三、样式优化1、设置行列宽度2、设置文本居中3、设置边框4、设置字体样式5、综合代码一、前言 xlwt模块是python中专门用于写入excel的拓展模块,可

一、前言

xlwt模块是python中专门用于写入excel的拓展模块,可以实现创建表单、写入指定单元格、指定单元格样式等人工实现的功能,一句话就是人使用excel实现的功能,这个扩展包都可以实现。

二、基础操作

1、创建workbook(创建excel)

#创建一个工作簿对象,设置编码格式为“utf-8”,默认格式是ASCII,为了方便写入中文,一般都要设置成UTF-8
workBook = xlwt.Workbook(encoding='utf-8')

2、创建sheet表

# 通过工作薄对象创建sheet,sheetName 要求长度小于31个字符,并且不能存在斜杠,否则会报错
sheet = workBook.add_sheet("sheetName")

3、写入数据

#首先需要在第0行写入表头,然后再写入后续数据,但是都是使用的write方法写入,只是坐标不一样
head = ['姓名','年龄','性别']
data = [['张三','19','男'],['刘雯雯','18','女']]
#循环写入表头
for i in head:
	sheet.write(0,head.index(i),i)
#循环写入数据
for i in range(len(data)):
    for j in range(len(data[i])):
        sheet.write(i+1,j,data[i][j])

4、保存workbook

# 通过workBook对象的save方法保存文档,savePath可以是绝对路径,也可以是相对了路径
savePath = 'C:\\Users\\Administrator\\Desktop\\test.xls'
workBook.save(savePath)

上面的示例代码综合后如下:

import xlwt
workBook = xlwt.Workbook(encoding='utf-8')
sheet = workBook.add_sheet("sheetName")
head = ['姓名','年龄','性别']
data = [['张三','19','男'],['刘雯雯','18','女']]
for i in head:
	sheet.write(0,head.index(i),i)
for i in range(len(data)):
    for j in range(len(data[i])):
        sheet.write(i+1,j,data[i][j])
savePath = 'C:\\Users\\Administrator\\Desktop\\test.xls'
workBook.save(savePath)

运行效果如下:

在这里插入图片描述

三、样式优化

1、设置行列宽度

1)设置列的宽度

在表格之中行是按照数字来计算,列是按照英文字母顺序来计算的。但是在xlwt库中则是将它们都改成从0开始,类似于索引的对象获取方式。调用sheet.col(0)就可以获取到表格列对象,它表示的就是列A。然后设置width属性值即可修改列宽,xlwt中默认字体0的1/256为衡量单位。xlwt创建时使用的默认宽度为2960,既11个字符0的宽度。

所以我们在设置列宽时可以用如下方法:width = 256 * 20 256为衡量单位,20表示20个字符宽度。

示例代码

for i in range (len(head)):
	sheet.col(i).width = 256*20

2)设置行的高度

行高的修改方式和列宽实际上是差不多的,使用row()方法并且传入索引即可获取到行对象。然后调用set_style()方法去设置行样式。

示例代码:

for i in range(len(data)):
	sheet.row(i+1).set_style(xlwt.easyxf('font:height 512;')) #第0行为表头,不修改

综合操作结果:

在这里插入图片描述

2、设置文本居中

在xlwt中,需要使用Alignment来设置单元格的对齐方式,其中horz代表水平对齐方式,vert代表垂直对齐方式。

  • VERT_TOP = 0x00 上端对齐
  • VERT_CENTER = 0x01 居中对齐(垂直方向上)
  • VERT_BOTTOM = 0x02 低端对齐
  • HORZ_LEFT = 0x01 左端对齐
  • HORZ_CENTER = 0x02 居中对齐(水平方向上)
  • HORZ_RIGHT = 0x03 右端对齐

示例:

style = xlwt.XFStyle()  # 创建一个样式对象,初始化样式
al = xlwt.Alignment()
al.horz = 0x02      	# 设置水平居中
al.vert = 0x01      	# 设置垂直居中
style.alignment = al
for i in range(len(data)):
    for j in range(len(data[i])):
		sheet.write(i+1, j, data[i][j], style)

测试效果:

在这里插入图片描述

3、设置边框

xlwt要设置边框,需要使用Borders来设置,可以设置实线、虚线、没有边框三种,并且可以通过colour属性设置颜色。

  • DASHED:虚线
  • THIN:实线
  • NO_LINE:没有边框

示例:

style = xlwt.XFStyle()  # 创建一个样式对象,初始化样式
borders = xlwt.Borders()
#设置边框属性实线、黑色
borders.left = xlwt.Borders.THIN
borders.top = xlwt.Borders.THIN
borders.right = xlwt.Borders.THIN
borders.bottom = xlwt.Borders.THIN
borders.left_colour = 0xff
borders.right_colour = 0xff
borders.bottom_colour = 0xff
borders.top_colour = 0xff

style.borders = borders
for i in range(len(data)):
    for j in range(len(data[i])):
		sheet.write(i+1, j, data[i][j], style)

测试效果:

在这里插入图片描述

4、设置字体样式

设置字体样式,需要使用Font()来创建字体样式。

示例:

style = xlwt.XFStyle() 			# 初始化样式
font = xlwt.Font() 				# 为样式创建字体
font.name = 'Times New Roman'
font.bold = True 				# 黑体
font.underline = True 			# 下划线
font.italic = True 				# 斜体字
style.font = font 				# 设定样式

测试效果:

在这里插入图片描述

5、综合代码

import xlwt

workBook = xlwt.Workbook(encoding='utf-8')
sheet = workBook.add_sheet("sheetName")
head = ['姓名', '年龄', '性别']
data = [['张三', '19', '男'], ['刘雯雯', '18', '女']]
for i in head:
	sheet.write(0, head.index(i), i)
for i in range(len(head)):
	sheet.col(i).width = 256*20
style = xlwt.XFStyle()  # 创建一个样式对象,初始化样式
al = xlwt.Alignment()
borders = xlwt.Borders()
font = xlwt.Font() 	
#设置居中
al.horz = 0x02      	# 设置水平居中
al.vert = 0x01      	# 设置垂直居中
#设置边框
borders.left = xlwt.Borders.THIN
borders.top = xlwt.Borders.THIN
borders.right = xlwt.Borders.THIN
borders.bottom = xlwt.Borders.THIN
borders.left_colour = 0xff
borders.right_colour = 0xff
borders.bottom_colour = 0xff
borders.top_colour = 0xff
# 设置字体样式
font.name = 'Times New Roman'
font.bold = True 				# 黑体
font.underline = True 			# 下划线
font.italic = True 				# 斜体字
# 设定样式
style.font = font 				
style.alignment = al
style.borders = borders
# 写入数据和样式
for i in range(len(data)):
    sheet.row(i+1).set_style(xlwt.easyxf('font:height 512;'))
    for j in range(len(data[i])):
        sheet.write(i+1, j, data[i][j], style)
# 保存工作薄
savePath = 'C:\\Users\\Administrator\\Desktop\\test.xls'
workBook.save(savePath)

到此这篇关于Python中xlwt模块的具体用法的文章就介绍到这了,更多相关python xlwt模块内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python中xlwt模块的具体用法

本文链接: https://www.lsjlt.com/news/197358.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python中xlwt模块的具体用法
    目录一、前言二、基础操作三、样式优化1、设置行列宽度2、设置文本居中3、设置边框4、设置字体样式5、综合代码一、前言 xlwt模块是python中专门用于写入Excel的拓展模块,可...
    99+
    2023-02-23
    python xlwt模块
  • python中的xlwt模块如何使用
    这篇文章主要介绍“python中的xlwt模块如何使用”,在日常操作中,相信很多人在python中的xlwt模块如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python中的xlwt模块如何使用”的疑...
    99+
    2023-07-05
  • python xlwt模块的使用解析
    目录一、基础类介绍1、工作簿类Workbook简介:2、工作表类WorkSheet简介3、创建一个不带样式的基础Excel表二、xlwt高级应用1、字体类Font简介1.1创建一个改...
    99+
    2022-11-12
  • 怎么在python中使用xlwt模块
    这期内容当中小编将会给大家带来有关怎么在python中使用xlwt模块,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、基础类介绍1、工作簿类Workbook简介:import xlwtclas...
    99+
    2023-06-14
  • Python中typing模块的具体使用
    目录typing库一、 简介二、 别名1、 类型别名2、 NewType3、 可调用对象三、 泛型支持1、集合类型2、 抽象基类3、 泛型4、 Any5、 特殊形式5.1 Type5...
    99+
    2022-11-11
  • python中decimal模块的具体使用
    decimal模块主要的作用是精确小数,因为float是不精确的,只是无限接近,对于一些需要精确小数点后位数的就需要用decimal。 Decimal类型的优点 Decimal类型是...
    99+
    2023-01-29
    python decimal模块 python decimal
  • Nginx中upstream模块的具体用法
    目录upstream模块简介upstream模块接口memcached模块分析小结upstream模块简介 nginx模块一般被分成三大类:handler、filter和upstre...
    99+
    2023-05-14
    Nginx upstream模块 Nginx upstream
  • python二进制转换模块的具体用法
    在pyton中,通过struct模块来对二进制进行转换,主要包括两大类函数,即用于打包的pack和用于解包的unpack。 其中,struct.pack的输入格式为struct.pa...
    99+
    2022-11-12
  • 利用Python中xlwt模块操作excel的示例详解
    目录一、安装二、创建表格并写入三、设置单元格样式四、设置单元格宽度五、设置单元格背景色六、设置单元格内容对齐方式七、单元格添加超链接八、单元格添加公式九、单元格中输入日期十、合并行和...
    99+
    2022-11-12
  • flask-script模块的具体使用
    目录1 作用2 安装3 所有要运行的命令都放在 manager.py 中4 三种方式 创建命令4.1 方式一 创建 Command子类4.2 方式二 使用装饰器 @manager.c...
    99+
    2022-11-12
  • Python日期时间模块arrow的具体使用
    目录arrow模块的使用 获取arrow对象 获取当前时间 时间形式转换 转换成时间字符串 转换成时间戳 获取数据 修改时间 将字符串转换为arrow对象  &n...
    99+
    2022-11-12
  • Python标准模块--ContextManager上下文管理器的具体用法
    写代码时,我们希望把一些操作放到一个代码块中,这样在代码块中执行时就可以保持在某种运行状态,而当离开该代码块时就执行另一个操作,结束当前状态;所以,简单来说,上下文管理器的目的就是规定对象的使用范围,如果超...
    99+
    2022-06-04
    上下文 管理器 模块
  • Python中模块的使用--binascii模块用法
    目录binascii模块用法binascii模块和进制转换笔记 Python内置函数binascii模块用法 binascii模块用于在二进制和ASCII之间转换 >...
    99+
    2022-11-11
  • python中with的具体用法
    目录简介深入代码简介 with的基本表达式如下 with context_expression [as target(s)]: ... with-body 其中co...
    99+
    2023-02-23
    python with使用 python with
  • python中decimal模块的用法
    目录1. Decimal类型的优点2. decimal模块的构成3. context4. Signals5. Round类型查看python3.4.1文档,发现对于decimal模块...
    99+
    2023-02-19
    python decimal模块 python decimal
  • Python中的itertools模块的用法
    本篇内容主要讲解“Python中的itertools模块的用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中的itertools模块的用法”吧!在Python中有一个功能强大的迭代...
    99+
    2023-06-16
  • Python中的time模块与datetime模块用法总结
    time模块 time模块是包含各方面对时间操作的函数. 尽管这些常常有效但不是所有方法在任意平台中有效. time用struct_time表示时间 import time # time.struct...
    99+
    2022-06-04
    模块 Python time
  • Python中time模块和datetime模块的用法示例
    time模块方法: time.time():获取当前时间的时间戳 time.localtime():接受一个时间戳,并把它转化为一个当前时间的元组。不给参数的话就会默认将time.time()作为参数传入 ...
    99+
    2022-06-04
    模块 示例 Python
  • Python中str.format()方法的具体使用
    目录1. 术语说明 2. 简单字段名 2.1 简单字段名的说明 2.2 省略字段名 2.3 数字形式的简单字段名 2.4 变量名形式的简单字段名 2.5 简单字段名的混合使用 2.6...
    99+
    2022-11-12
  • Python中的Beautiful Soup模块的用法
    这篇文章主要介绍“Python中的Beautiful Soup模块的用法”,在日常操作中,相信很多人在Python中的Beautiful Soup模块的用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Pyt...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作