python的xlwt模块的常用方法
工作中需要导出数据为excel格式,使用了xlwt模块,在此记录一下用到的内容。
1. 创建一个表,设置一个sheet
import xlwt workbook = xlwt.Workbook(encoding='utf8')
worksheet = workbook.add_sheet(u'sheet1')
2. 设置列宽,cols_num是列的数目,可以通过修改12这个值,修改列的宽度
for c in range(cols_num):
worksheet.col(c).width = 256 * 12
3.设置行高,修改800为别的值,可以修改行的高度
worksheet.row(0).height_mismatch = True
worksheet.row(0).height = 800 # 设置行高
4.设置单元格风格,写成了一个函数。如注释所示,Font()用来设置单元格字体内容,如字体类型、大小等;borders()设置单元格边框线粗细;partern()设置单元格背景颜色;XFStyle()设置风格类型;alignment()用来设置了字体水平居中、垂直居中、自动换行。
def body_style(pattern=None):
# 设置excel单元格风格
font = xlwt.Font() # Create Font
font.name = "SimSun" # 宋体
font.height = 20 * 12 # 字体大小
style = xlwt.XFStyle() # Create Style
style.alignment.horz = 2 # 字体居中
style.alignment.vert = 1
style.alignment.wrap = 1
if pattern:
pat = xlwt.Pattern()
pat.pattern = xlwt.Pattern.SOLID_PATTERN # 设置背景颜色
pat.pattern_fore_colour = pattern
style.pattern = pat
borders = xlwt.Borders()
borders.left = 1
borders.right = 1
borders.top = 1
borders.bottom = 1
style.font = font
style.borders = borders
return style
5. falsk导出excel
def down():
excel = excel()
sio = StringIO.StringIO()
excel.save(sio)
resp = make_response(sio.getvalue())
filename = (u'表hh-' + u'-' + time.strftime("%Y-%m-%d", time.localtime(time.time())))
resp.headers["Content-Disposition"] = "attachment; filename={}.xls".format(filename)
resp.headers['Content-Type'] = 'application/x-xls'
return resp
6. 往单元格内写入数据,合并单元格
worksheet.write(m_row, m_col, u'内容', body_style())
# 合并单元格,前四个参数分别是起止的行列位置
worksheet.write_merge(1, 2, m_col, m_col+3, u'还好', body_style())
7. 在设置字体颜色或者单元格背景颜色的时候,可以使用源码中0x0D参数来代表不同的颜色,也可以用0-127来表示不同的颜色,写了以下代码来测试了一下,方便之后使用
# coding=utf-8
import xlwt workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('sheet1') for i in range(0, 128):
stylei = xlwt.XFStyle()
patterni = xlwt.Pattern()
patterni.pattern = 1
# 设置底纹的图案索引,1为实心,2为50%灰色,对应为excel文件单元格格式中填充中的图案样式
patterni.pattern_fore_colour = i # 设置底纹的前景色,对应为excel文件单元格格式中填充中的背景色
patterni.pattern_back_colour = 35 # 设置底纹的背景色,对应为excel文件单元格格式中填充中的图案颜色
stylei.pattern = patterni # 为样式设置图案
worksheet.write(i, 0, i, stylei) workbook.save('file.xls')
8. 待续,后面根据一些使用的属性进行补充,此外,目前对于wookbook类的属性还没有搞明白怎么使用。
python的xlwt模块的常用方法的更多相关文章
- python 的xlwt模块
一.安装 ♦ python官网下载https://pypi.python.org/pypi/xlwt模块安装. ♦或者在cmd窗口 pip install xlrd 二.使用 1.导入模块 imp ...
- Python使用xlwt模块 操作Excel文件
导出Excel文件 1. 使用xlwt模块 import xlwt import xlwt # 导入xlwt # 新建一个excel文件 file = xlwt.Workbook() # ...
- python中os模块的常用方法
1.os模块:os模块在python中包含普遍的操作系统功能,下面列出了一些在os模块中比较有用的部分. os.sep可以取代操作系统特定的路径分隔符.windows下为 “\\” os.name字符 ...
- python之xlwt模块列宽width、行高Heights详解
今天用python操作excel时,发现xlwt的API中没有对width.height有更多介绍,且使用时也不知道width取多少合适.现在这做个详细介绍 使用版本: python:2.7.5 xl ...
- python中calendar模块的常用方法
>>> import calendar >>> calendar.isleap(2000) #判断是否是闰年 True >>> calendar. ...
- python通过xlwt模块直接在网页上生成excel文件并下载
urls: from django.conf.urls import url, include from . import views urlpatterns = [ ... url(r'^domai ...
- 24.python中xlwt模块用法详解
1.创建并保存一个excel 创建一个工作簿,设置编码格式为“utf-8”,默认格式是ASCII,为了方便写入中文,一般都要设置成UTF-8 import xlwt wb = xlwt.Workboo ...
- Python的re模块的常用方法
一.re的match与search方法 1.re.match方法 re.match 尝试从字符串的起始位置匹配一个模式,匹配成功re.match方法返回一个匹配的对象,如果不是起始位置匹配成功的话,m ...
- xlwt模块
python使用xlwt模块操作Excel 该模块安装很简单 $ pip install xlwt 语法 import xlwt # 创建一个workbook 设置编码 workbook = xlwt ...
随机推荐
- 实战系列之 Node.js 玩转 Java
这些年以来,Node.js的兴起,JavaScript已经从当年的“世界最被误解的语言”变成了“世界最流行的语言”.且其发展之势,从语言本身的进化,库和包的增长,工具支持的完善,star项目和领域解决 ...
- hdu1356&hdu1944 博弈论的SG值(王道)
S-NimProblem DescriptionArthur and his sister Caroll have been playing a game called Nim for some ti ...
- 机器学习理论提升方法AdaBoost算法第一卷
AdaBoost算法内容来自<统计学习与方法>李航,<机器学习>周志华,以及<机器学习实战>Peter HarringTon,相互学习,不足之处请大家多多指教! 提 ...
- WPF---Effect效果
在 WPF 中,可以使用 BitmapEffect 对象为每一个 Visual 对象生成各种各样的效果,一个 Visual 对象可以设置一种或多种 BitmapEffect 效果,WPF 内置了几种效 ...
- Docker入门系列(一):目标和安排
Docker入门系列(一) 这个系列的教程来源于docker的官方文档,此文档的目的在于一步一步学习docker的使用方法. 这一系列的教程有如下几篇文档: docker安装启动 构建第一个docke ...
- python虚拟环境的安装配置
安装 使用pip安装 pip install virtualenv 因为已经安装过了,所以显示这样 在这里我想在这里推荐大家以后再安装类库时可以用豆瓣源来安装,速度很快,因为在国内访问 官方p ...
- 上传代码 CodePlex
博客园作为博客备份,博客会更新一份在博客园 CodePlex是微软开源项目网站,有很多人都在上面传代码,我们也可以上传自己的代码 注册 我们可以用微软账号注册,填写用户名.密码,很快就好. 新建项目 ...
- Web前端性能优化——如何有效提升静态文件的加载速度
WeTest 导读 此文总结了笔者在Web静态资源方面的一些优化经验. 一.如何优化 用户在访问网页时, 最直观的感受就是页面内容出来的速度,我们要做的优化工作, 也主要是为了这个目标.那么为了提高页 ...
- 网络库Alamofire使用方法学习笔记
Github地址 由于Alamofire是swift网络库,所以,以下的所有介绍均基于swift项目 导入Alamofire 以下为使用cocoapods导入,其余的方式请参考官网 source 'h ...
- Python 之简单线程池创建
try: from Queue import Queue, Empty except: from queue import Queue, Empty import threading import t ...