1 xlwt第三方库

说明:xlwt是一个用于将数据和格式化信息写入并生成Excel文件的库。

注意:xlwt不支持写xlsx表,打开表文件报错。

官方文档:https://xlwt.readthedocs.io/en/latest/api.html

2 xlwt基础操作

2.1 获取工作䈬对象

  1. import xlwt
  2. 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 添加并获取工作表对象

  1. sh = book.add_sheet(sheetname="sheet_1", cell_overwrite_ok=False)

参数:

  • sheetname:设置sheet工作表名称。
  • cell_overwrite_ok:设置在此工作表中是否允许重写单元格,默认False为不允许,True为允许。

2.3 设置单元格样式

  1. sh.row(0).height = 20*30 # 直接设置第一行行高为30磅,20为基数
  2. # 通过wlwt.XFStyle()对象设置复杂样式
  3. style = xlwt.XFStyle() # 获取样式对象
  4. font = xlwt.Font() # 获取字体对象
  5. font.name = '微软雅黑' # 设置字体类型
  6. style.font = font # 将设置后的字体对象赋值给样式对象的font属性

不设置则使用默认样式:字体Arial,字号10,底端对齐等。

2.4 写入单元格数据

  1. sh.write(r=0, c=0, label="hello", style=style) # sytle为第3步设置的样式对象

参数:

  • r:行号。
  • c:列号。
  • label:写入r行c列单元格的值,默认为空字符。
  • style:设置r行c列单元格的样式,不设置则使用默认样式。

2.5 保存Excel文件

  1. book.save("test.xls")

3 常用格式设置

3.1 设置指定行高度

  1. sh.row(0).height_mismatch = True # 设置行高可编辑
  2. sh.row(0).height = 20*10 # 设置第一行行高:20为基数*10磅

3.2 设置指定列宽度

  1. sh.col(0).width = 256*20 # # 设置第一列列宽:256为基数*20个字符

3.3 设置冻结行/列

  1. # 先设置sheet表的冻结属性为True
  2. sh.set_panes_frozen("1") # 1为True,0为False
  3. sh.set_horz_split_pos(1) # 冻结首行
  4. sh.set_vert_split_pos(2) # 冻结前两列

3.4 设置合并单元格

  1. sh.write_merge(r1=1, r2=2, c1=3, c2=4, label="hello") # 合并D2、D3、E2、E3单元格

合并效果:

3.5 设置单元格公式

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

公式结果:

3.6 设置单元格字体

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

字体颜色序号对照图:

3.7 设置单元格背景填充颜色

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

背景颜色序号对照图:

3.8 设置单元格对齐方式

  1. style = xlwt.XFStyle() # 获取样式对象
  2. alignment = xlwt.Alignment() # 获取对齐方式对象
  3. # 水平调整:alignment.horz
  4. alignment.horz = xlwt.Alignment.HORZ_CENTER # 水平居中
  5. """
  6. alignment.horz = xlwt.Alignment.HORZ_LEFT # 左对齐
  7. alignment.horz = xlwt.Alignment.HORZ_RIGHT # 右对齐
  8. """
  9. # 垂直调整:alignment.vert
  10. alignment.vert = xlwt.Alignment.VERT_CENTER # 垂直居中
  11. """
  12. alignment.vert = xlwt.Alignment.VERT_TOP # 顶端对齐
  13. alignment.vert = xlwt.Alignment.VERT_BOTTOM # 底端对齐
  14. """
  15. # 自动换行
  16. alignment.wrap = 1
  17. style.alignment = alignment # 将设置后的对齐方式对象赋值给样式对象的alignment属性

3.9 设置单元格边框

  1. style = xlwt.XFStyle() # 获取样式对象
  2. borders = xlwt.Borders() # 获取边框对象
  3. borders.left = xlwt.Borders.THIN # 设置左边细边框
  4. borders.right = xlwt.Borders.THICK # 设置右边粗边框
  5. borders.top = xlwt.Borders.DOTTED # 设置顶部虚线框
  6. borders.bottom = xlwt.Borders.DOUBLE # 设置底部双线框
  7. style.borders = borders # 将设置后的边框对象赋值给样式对象的borders属性

边框效果:

python xlwt写Excel表的更多相关文章

  1. 使用Python xlwt写excel文件

    如果需要使用Python写Excel文件,首先下载或者安装xlwt. pip install xlwt 下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件: 创建工作簿(work ...

  2. python xlwt写excel格式控制 颜色、模式、编码、背景色

    关于写excel的格式控制,比如颜色等等 import xlwt from datetime import datetime font0 = xlwt.Font() font0.name = 'Tim ...

  3. Python xlwt 写Excel相关操作记录

    1.安装xlwt pip install xlwt 2.写Excel必要的几步 import xlwt book = xlwt.Workbook() #创建一个workbook,无编码设置编码book ...

  4. xlwt:python的写excel模块

    最近工作时碰到了将数据导出,生成一个excel表,对其中的部分数据进行统计,并给其中部分符合条件的数据添加对应的背景颜色的功能需求,于是乎,对Python中写excel的模块xlwt研究了一下,在工作 ...

  5. python中使用xlrd读excel使用xlwt写excel

    原文地址 :http://www.bugingcode.com/blog/python_xlrd_read_excel_xlwt_write_excel.html 在数据分析和运营的过程中,有非常多的 ...

  6. python 之 处理excel表的xlwt模块学习记录

    python 操作excel表的常用模块主要有2个: 1:xlrd:读取excel表 2:xlwt:创建并写入excel表 安装方法: 可以直接下载安装:https://pypi.python.org ...

  7. python实现导出excel表(前端+后端)

    之前在做项目管理系统的时候需要实现将数据导出到excel表的功能,搜索之后发现了python的xlwt模块可以很好的实现这项功能. 首先是导入xlwt模块: import xlwtfrom io im ...

  8. python xlrd读Excel表

    1 xlrd第三方库 注意:xlrd较新版本不支持读xlsx表,需安装1.2.0版本(pip install xlrd==1.2.0)或使用其他库. xlrd库官方文档:https://xlrd.re ...

  9. 用Python xlwt建立excel表格

    1.下载xlwt的Python库 (This is a library for developers to use to generate spreadsheet files compatible w ...

随机推荐

  1. 巩固javaweb第十二天

    巩固内容: HTML 图像- 图像标签( <img>)和源属性(Src) 在 HTML 中,图像由<img> 标签定义. <img> 是空标签,意思是说,它只包含属 ...

  2. 关于ai算法的一个点子

    长久以来,一直想要有自己的原生算法. 今天灵感图然来了: 想到, 一个事务不但要看它本身,也要看欣赏它的人. 要研究两个方面. 你要研究音乐,也要研究欣赏音乐的人. 人之所以会欣赏音乐,而牛不可以(对 ...

  3. mysql explain using index condition

    Using where:表示优化器需要通过索引回表查询数据:Using index:表示直接访问索引就足够获取到所需要的数据,不需要通过索引回表:Using index condition:在5.6版 ...

  4. vue-cli4脚手架搭建二

    vue-cli4脚手架搭建一 vue create vue3 cd vue3 yarn serve http://localhost:8080/#/ main.js文件 import Vue from ...

  5. APICloud - 提交项目 点击右键 没有git这个选项

    你们是不是也遇到过这个问题,吧项目检出来后,花了很久的时间,好不容易吧项目改完,提交的时候点击鼠标右键,发现git选项没有在里面了,找不到,但是这个问题也不是很常遇到,机率很小,下面我来告诉你们吧 原 ...

  6. Docker常用image

    MySQL Start a mysql server instance Starting a MySQL instance is simple: docker run -itd --name mysq ...

  7. mybtis入门

    1.编写持久化对象 public class User { private String id;//用户编号 private String username;//用户名 private String ...

  8. 重新整理 .net core 实践篇——— UseEndpoints中间件[四十八]

    前言 前文已经提及到了endponint 是怎么匹配到的,也就是说在UseRouting 之后的中间件都能获取到endpoint了,如果能够匹配到的话,那么UseEndpoints又做了什么呢?它是如 ...

  9. Mysql配置文件 binlog和慢日志

    目录 binlog binlog_format log_slave_updates log-bin|log-bin-index expire_logs_days relay-log|relay-log ...

  10. 安装MySQL5.7.26教程图解

    安装MySQL5.7.26教程图解 1.安装mysql所需的yum源 yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf ...