工作中需要导出数据为excel格式,使用了xlwt模块,在此记录一下用到的内容。

1. 创建一个表,设置一个sheet

1 import xlwt
2
3 workbook = xlwt.Workbook(encoding='utf8')
4 worksheet = workbook.add_sheet(u'sheet1')

2. 设置列宽,cols_num是列的数目,可以通过修改12这个值,修改列的宽度

1 for c in range(cols_num):
2     worksheet.col(c).width = 256 * 12

3.设置行高,修改800为别的值,可以修改行的高度

1 worksheet.row(0).height_mismatch = True
2 worksheet.row(0).height = 800  # 设置行高

4.设置单元格风格,写成了一个函数。如注释所示,Font()用来设置单元格字体内容,如字体类型、大小等;borders()设置单元格边框线粗细;partern()设置单元格背景颜色;XFStyle()设置风格类型;alignment()用来设置了字体水平居中、垂直居中、自动换行。

 1 def body_style(pattern=None):
 2     # 设置excel单元格风格
 3     font = xlwt.Font()  # Create Font
 4     font.name = "SimSun"  # 宋体
 5     font.height = 20 * 12  # 字体大小
 6     style = xlwt.XFStyle()  # Create Style
 7     style.alignment.horz = 2  # 字体居中
 8     style.alignment.vert = 1
 9     style.alignment.wrap = 1
10     if pattern:
11         pat = xlwt.Pattern()
12         pat.pattern = xlwt.Pattern.SOLID_PATTERN  # 设置背景颜色
13         pat.pattern_fore_colour = pattern
14         style.pattern = pat
15     borders = xlwt.Borders()
16     borders.left = 1
17     borders.right = 1
18     borders.top = 1
19     borders.bottom = 1
20     style.font = font
21     style.borders = borders
22     return style

5. falsk导出excel

1 def down():
2         excel = excel()
3         sio = StringIO.StringIO()
4         excel.save(sio)
5         resp = make_response(sio.getvalue())
6         filename = (u'表hh-' + u'-' + time.strftime("%Y-%m-%d", time.localtime(time.time())))
7         resp.headers["Content-Disposition"] = "attachment; filename={}.xls".format(filename)
8         resp.headers['Content-Type'] = 'application/x-xls'
9         return resp

6. 往单元格内写入数据,合并单元格

1 worksheet.write(m_row, m_col, u'内容', body_style())
2 # 合并单元格,前四个参数分别是起止的行列位置
3 worksheet.write_merge(1, 2, m_col, m_col+3, u'还好', body_style())

7. 在设置字体颜色或者单元格背景颜色的时候,可以使用源码中0x0D参数来代表不同的颜色,也可以用0-127来表示不同的颜色,写了以下代码来测试了一下,方便之后使用

 1 # coding=utf-8
 2 import xlwt
 3
 4 workbook = xlwt.Workbook(encoding='utf-8')
 5 worksheet = workbook.add_sheet('sheet1')
 6
 7 for i in range(0, 128):
 8         stylei = xlwt.XFStyle()
 9         patterni = xlwt.Pattern()
10         patterni.pattern = 1
11         # 设置底纹的图案索引,1为实心,2为50%灰色,对应为excel文件单元格格式中填充中的图案样式
12         patterni.pattern_fore_colour = i    # 设置底纹的前景色,对应为excel文件单元格格式中填充中的背景色
13         patterni.pattern_back_colour = 35   # 设置底纹的背景色,对应为excel文件单元格格式中填充中的图案颜色
14         stylei.pattern = patterni           # 为样式设置图案
15         worksheet.write(i, 0, i, stylei)
16
17 workbook.save('file.xls')

8. 待续,后面根据一些使用的属性进行补充,此外,目前对于wookbook类的属性还没有搞明白怎么使用。

转载于:https://www.cnblogs.com/qiaojushuang/p/7486723.html

python的xlwt模块的常用方法相关推荐

  1. Python calendar日历模块的常用方法

    Python calendar日历模块的常用方法 如果您想知道某一天是星期几,某个月有多少个周末...那么,日历对您来说非常方便.您的办公桌有制作精美的日历,手机里也有日历,电脑里也有日历,随手可得. ...

  2. Python使用xlwt模块 操作Excel文件

    导出Excel文件     1. 使用xlwt模块 import xlwt import xlwt    # 导入xlwt # 新建一个excel文件 file = xlwt.Workbook() # ...

  3. python基础---常用模块的常用方法

    python中OS常用方法 Python的标准库中的os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的.即它允许一个程序在编写后不需要任何改动,也不会发生任何问 ...

  4. python使用xlwt模块操作Excel

    部分摘自官网文档. 该模块安装很简单 $ pip install xlwt 先来个简单的例子: #!/usr/bin/python #coding=utf-8 # ================== ...

  5. Python | Python 使用xlwt模块操作Excel(持续更新)

    一.安装xlwt pip install xlwt 二.写入excel 1.代码 import xlwtworkbook = xlwt.Workbook(encoding='utf8') worksh ...

  6. python怎么用excel-Python使用xlwt模块操作Excel的方法详解

    本文实例讲述了Python使用xlwt模块操作Excel的方法.分享给大家供大家参考,具体如下: 部分摘自官网文档. 该模块安装很简单 $ pip install xlwt 先来个简单的例子: #!/ ...

  7. python xlwt写入excel_python xlwt模块生成excel文件并写入数据 xlrd读取数据

    python中一般使用 xlwt (excel write)来生成Excel文件(可以控制单元格格式),用 xlrd 来读取Excel文件,用xlrd读取excel是不能对其进行操作的. 1.xlrd ...

  8. python的random模块怎么写_Python常用标准库之random模块

    一.概述 在我们日常写代码的过程中,经常需要产生随机数,Python为我们提供了random库,该模块实现了各种分布的伪随机数生成器,本文主要讲解其常用方法,更多详细内容请移步:Random官方文档. ...

  9. python如何使用ppip安装xlwt_Python中xlrd和xlwt模块使用方法

    原博文 2017-07-05 21:30 − 本文主要介绍可操作excel文件的xlrd.xlwt模块.其中xlrd模块实现对excel文件内容读取,xlwt模块实现对excel文件的写入. 安装xl ...

最新文章

  1. 装上螺旋桨,加州理工让只能行走的双足机器人「上了天」,还玩起了障碍滑板、走绳索...
  2. PAT A1063——set的常见用法详解
  3. php 规格,PHP 设计模式系列之 specification规格模式_PHP
  4. Linux学习之系统编程篇: 阻塞信号集、未决信号集、自定义信号集
  5. sublime+virtualenv+pyspark执行的时候报Unable to load native-hadoop library for your platform
  6. 微信视频号的实时推荐技术架构分享
  7. 2021年中国一次性卫生设备市场趋势报告、技术动态创新及2027年市场预测
  8. 17 任务调度相关类综述——Live555源码阅读(一)任务调度相关类
  9. FPGA原理图设计----Arria II 系列FPGA设计(SATA)
  10. 精讲RestTemplate第6篇-文件上传下载与大文件流式下载
  11. Linux上的arping命令介绍
  12. 也谈谈内卷化、996和程序员的发展
  13. 有各组方差怎么算组间平方和_组内离差平方和,组间离差平方和与总离差平方和各反映了什么?...
  14. 计算机口语英语对话视频,出国常用英语口语对话视频
  15. Linux at命令使用介绍
  16. 计算机各配置性能如何区分,怎么测试电脑性能?判断电脑性能主要看什么?
  17. RMON学习笔记(二)
  18. 数字签名、证书,RSA加密、解密
  19. python常用小脚本总结
  20. Android解耦库EventBus的使用和源码分析

热门文章

  1. CCF 201409-1 相邻数对
  2. JFreeChart插件
  3. 创建Server 2012 VHDX虚拟磁盘模板
  4. PowerTip of the Day-How Much RAM Do You Have?
  5. 出生日期,看出你的天赋
  6. Android 置Activity全屏和无标题
  7. android list contain的使用
  8. 【Network】协议栈
  9. Fastify 2.2.0 和 1.14.5 发布,极速 Node.js Web 框架
  10. Android:解决Button中的文字全部大写