python xlwt写Excel表
1 xlwt第三方库
说明:xlwt是一个用于将数据和格式化信息写入并生成Excel文件的库。
注意:xlwt不支持写xlsx表,打开表文件报错。
官方文档:https://xlwt.readthedocs.io/en/latest/api.html
2 xlwt基础操作
2.1 获取工作䈬对象
import xlwt
book = xlwt.Workbook(encoding="ascii", style_compression=0)
参数:
- encoding:设置编码格式,默认ascii。
- sytle_compression:限制工作䈬中xlwt.XFStyle()对象个数,默认参数值为0。当报“More than 4094 XFs (styles)”异常时,设置参数值为2可解除限制。(xlwt.XFStyle()为下面第3点的样式对象)
2.2 添加并获取工作表对象
sh = book.add_sheet(sheetname="sheet_1", cell_overwrite_ok=False)
参数:
- sheetname:设置sheet工作表名称。
- cell_overwrite_ok:设置在此工作表中是否允许重写单元格,默认False为不允许,True为允许。
2.3 设置单元格样式
sh.row(0).height = 20*30 # 直接设置第一行行高为30磅,20为基数
# 通过wlwt.XFStyle()对象设置复杂样式
style = xlwt.XFStyle() # 获取样式对象
font = xlwt.Font() # 获取字体对象
font.name = '微软雅黑' # 设置字体类型
style.font = font # 将设置后的字体对象赋值给样式对象的font属性
不设置则使用默认样式:字体Arial,字号10,底端对齐等。
2.4 写入单元格数据
sh.write(r=0, c=0, label="hello", style=style) # sytle为第3步设置的样式对象
参数:
- r:行号。
- c:列号。
- label:写入r行c列单元格的值,默认为空字符。
- style:设置r行c列单元格的样式,不设置则使用默认样式。
2.5 保存Excel文件
book.save("test.xls")
3 常用格式设置
3.1 设置指定行高度
sh.row(0).height_mismatch = True # 设置行高可编辑
sh.row(0).height = 20*10 # 设置第一行行高:20为基数*10磅
3.2 设置指定列宽度
sh.col(0).width = 256*20 # # 设置第一列列宽:256为基数*20个字符
3.3 设置冻结行/列
# 先设置sheet表的冻结属性为True
sh.set_panes_frozen("1") # 1为True,0为False
sh.set_horz_split_pos(1) # 冻结首行
sh.set_vert_split_pos(2) # 冻结前两列
3.4 设置合并单元格
sh.write_merge(r1=1, r2=2, c1=3, c2=4, label="hello") # 合并D2、D3、E2、E3单元格
合并效果:

3.5 设置单元格公式
sh.write(0, 0, label=2)
sh.write(1, 0, label=3)
sh.write(2, 0, label=xlwt.Formula('SUM(A1:A2)')) # 设置A3的值为A1和A2之和
sh.write(2, 1, label=xlwt.Formula('A1*A2')) # 设置B3的值为A1和A2乘积
sh.write(2, 2, xlwt.Formula('HYPERLINK("http://www.baidu.com";"Baidu")')) # 设置C3单元格超链接
公式结果:

3.6 设置单元格字体
style = xlwt.XFStyle() # 获取样式对象
font = xlwt.Font() # 获取字体对象
font.name = '微软雅黑' # 设置字体类型
font.height = 20*15 # 设置字体大小:20为基数*15号字体
font.bold = True # 加粗
font.underline = True # 下划线
font.italic = True # 斜体
font.colour_index = 2 # 设置字体颜色,下面有字体颜色序号对照图
style.font = font # 将设置后的字体对象赋值给样式对象的font属性
字体颜色序号对照图:

3.7 设置单元格背景填充颜色
style = xlwt.XFStyle() # 获取样式对象
pattern = xlwt.Pattern() # 获取背景对象
pattern.pattern = xlwt.Pattern.SOLID_PATTERN # 使工作表单元格背景颜色可设置
pattern.pattern_fore_colour = 4 # 数字背景颜色,下面有背景颜色序号对照图
style.pattern = pattern # 将设置后的背景对象赋值给样式对象的pattern属性
背景颜色序号对照图:

3.8 设置单元格对齐方式
style = xlwt.XFStyle() # 获取样式对象
alignment = xlwt.Alignment() # 获取对齐方式对象
# 水平调整:alignment.horz
alignment.horz = xlwt.Alignment.HORZ_CENTER # 水平居中
"""
alignment.horz = xlwt.Alignment.HORZ_LEFT # 左对齐
alignment.horz = xlwt.Alignment.HORZ_RIGHT # 右对齐
"""
# 垂直调整:alignment.vert
alignment.vert = xlwt.Alignment.VERT_CENTER # 垂直居中
"""
alignment.vert = xlwt.Alignment.VERT_TOP # 顶端对齐
alignment.vert = xlwt.Alignment.VERT_BOTTOM # 底端对齐
"""
# 自动换行
alignment.wrap = 1
style.alignment = alignment # 将设置后的对齐方式对象赋值给样式对象的alignment属性
3.9 设置单元格边框
style = xlwt.XFStyle() # 获取样式对象
borders = xlwt.Borders() # 获取边框对象
borders.left = xlwt.Borders.THIN # 设置左边细边框
borders.right = xlwt.Borders.THICK # 设置右边粗边框
borders.top = xlwt.Borders.DOTTED # 设置顶部虚线框
borders.bottom = xlwt.Borders.DOUBLE # 设置底部双线框
style.borders = borders # 将设置后的边框对象赋值给样式对象的borders属性
边框效果:

python xlwt写Excel表的更多相关文章
- 使用Python xlwt写excel文件
如果需要使用Python写Excel文件,首先下载或者安装xlwt. pip install xlwt 下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件: 创建工作簿(work ...
- python xlwt写excel格式控制 颜色、模式、编码、背景色
关于写excel的格式控制,比如颜色等等 import xlwt from datetime import datetime font0 = xlwt.Font() font0.name = 'Tim ...
- Python xlwt 写Excel相关操作记录
1.安装xlwt pip install xlwt 2.写Excel必要的几步 import xlwt book = xlwt.Workbook() #创建一个workbook,无编码设置编码book ...
- xlwt:python的写excel模块
最近工作时碰到了将数据导出,生成一个excel表,对其中的部分数据进行统计,并给其中部分符合条件的数据添加对应的背景颜色的功能需求,于是乎,对Python中写excel的模块xlwt研究了一下,在工作 ...
- python中使用xlrd读excel使用xlwt写excel
原文地址 :http://www.bugingcode.com/blog/python_xlrd_read_excel_xlwt_write_excel.html 在数据分析和运营的过程中,有非常多的 ...
- python 之 处理excel表的xlwt模块学习记录
python 操作excel表的常用模块主要有2个: 1:xlrd:读取excel表 2:xlwt:创建并写入excel表 安装方法: 可以直接下载安装:https://pypi.python.org ...
- python实现导出excel表(前端+后端)
之前在做项目管理系统的时候需要实现将数据导出到excel表的功能,搜索之后发现了python的xlwt模块可以很好的实现这项功能. 首先是导入xlwt模块: import xlwtfrom io im ...
- python xlrd读Excel表
1 xlrd第三方库 注意:xlrd较新版本不支持读xlsx表,需安装1.2.0版本(pip install xlrd==1.2.0)或使用其他库. xlrd库官方文档:https://xlrd.re ...
- 用Python xlwt建立excel表格
1.下载xlwt的Python库 (This is a library for developers to use to generate spreadsheet files compatible w ...
随机推荐
- 日常Java 2021/11/2
Java提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据.有关对象的类型的信息和存储在对象中数据的类型.将序列化对象写入文件之后,可以从文件中读取出来 ...
- 日常Java 2021/10/11
抽象类 所有对象都是通过类描述的,但不是所有的类都是用来描述对象,就好比抽象类,此类中没有足够的信息描述一个对象. 抽象类不能实例化对象,所以抽象类必须的继承,才可以使用. 抽象方法 Abstract ...
- 大数据学习day20-----spark03-----RDD编程实战案例(1 计算订单分类成交金额,2 将订单信息关联分类信息,并将这些数据存入Hbase中,3 使用Spark读取日志文件,根据Ip地址,查询地址对应的位置信息
1 RDD编程实战案例一 数据样例 字段说明: 其中cid中1代表手机,2代表家具,3代表服装 1.1 计算订单分类成交金额 需求:在给定的订单数据,根据订单的分类ID进行聚合,然后管理订单分类名称, ...
- 【leetcode】212. Word Search II
Given an m x n board of characters and a list of strings words, return all words on the board. Each ...
- 容器之分类与各种测试(三)——stack
stack是栈,其实现也是使用了双端队列(只要不用双端队列的一端,仅用单端数据进出即完成单端队列的功能),由于queue和stack的实现均是使用deque,没有自己的数据结构和算法,所以这俩也被称为 ...
- gitlab之实战部署
#:准备Java环境,安装jdk root@ubuntu:~# cd /usr/local/src/ root@ubuntu:/usr/local/src# ls jdk-8u191-linux-x6 ...
- Type of 'this' pointer in C++
In C++, this pointer is passed as a hidden argument to all non-static member function calls. The typ ...
- struct vs class in C++
在C++中,除了以下几点外,struct和class是相同的. (1)class的成员的默认访问控制是private,而struct的成员的默认访问权限是public. 例如,program 1会编译 ...
- OSGI 理论知识
下面列出了主要的控制台命令: 表 1. Equinox OSGi 主要的控制台命令表 类别 命令 含义 控制框架 launch 启动框架 shutdown 停止框架 close 关闭.退出框架 exi ...
- 设计模式学习笔记之看懂UML类图
什么是UML: UML(统一建模语言)是当今软件设计的标准图标式语言.对于一个软件系统而言,UML语言具有以下的功能:可视化功能.说明功能.建造功能和建文档功能. UML都包括什么类型的图: 使用案例 ...