导出Excel文件

    1. 使用xlwt模块 import xlwt

import xlwt    # 导入xlwt

# 新建一个excel文件

   file = xlwt.Workbook() #注意这里的Workbook首字母是大写,无语吧

   # 新建一个sheet

    table = file.add_sheet('sheet name')

# 写入数据table.write(行,列,value)

   table.write(0,0,'test')

# 如果对一个单元格重复操作,会引发

   returns error:
       # Exception: Attempt to overwrite cell:
     # sheetname=u'sheet 1' rowx=0 colx=0

    # 所以在打开时加cell_overwrite_ok=True 解决

    table = file.add_sheet('sheet name',cell_overwrite_ok=True )

    file.save('demo.xls')  # 保存文件

另外,使用style

style = xlwt.XFStyle() # 初始化样式

font = xlwt.Font() #为样式创建字体

font.name = 'Times New Roman'

font.bold = True

style.font = font #为样式设置字体

table.write(0, 0, 'some bold Times text', style) # 使用样式

xlwt 允许单元格或者整行地设置格式。还可以添加链接以及公式。可以阅读源代码,那里有例子:

dates.py, 展示如何设置不同的数据格式

hyperlinks.py, 展示如何创建超链接 (hint: you need to use a formula)

merged.py, 展示如何合并格子

row_styles.py, 展示如何应用Style到整行格子中.

   例子一:

import xlwt
      wbk = xlwt.Workbook()
      sheet = wbk.add_sheet('sheet 1')
      # indexing is zero based, row then column
      sheet.write(0,1,'test text')
      sheet.write(1,1,'test text')
      wbk.save('test2.xls')  默认保存在桌面上

例子二:

import StringIO
import xlwt as ExcelWrite # 引入模块 def _make_excel(self, data_array):
if not data_array:
return ''
# data_array = sorted(data_array, key=lambda x:x['CreateTime']) # 按照数据的时间进行排序 # style_del = ExcelWrite.XFStyle()
# style_del.alignment.wrap = 1 header = [u'下单日期',u'出发时间',u'出发时段',u'上车地点',u'下车地点',u'乘客名',u'司机信息',u'口岸',u'车队',u'是否8座',u'支付渠道',u'支付金额',u'车队报价',u'备注',u'备注2', u'订单来源']
xls = ExcelWrite.Workbook(style_compression=2)
sheet = xls.add_sheet("Sheet1")
sheet.col(3).width = (30*367) # 设置表格的宽度
sheet.col(4).width = (30*367)
sheet.col(5).width = (20*367)
sheet.col(6).width = (20*367)
sheet.col(11).width = (20*367)
sheet.col(13).width = (20*367)
i = 0
# 写表头
for each_header in header:
sheet.write(0, i, each_header)
i += 1
row = 1
     # 填充每行的数据
for each_row in data_array:
col = 0
       # 填充一行的每列数据
for each_col in header:
if each_col in (u'下单日期', u'出发时间'):
# self 对象表示类本身
style = self._make_date_style() # 获取样式
else:
style = self._make_normal_style() if each_row['Status'] == 2:
badBG = ExcelWrite.Pattern() # 设置背景
badBG.pattern = badBG.SOLID_PATTERN
# 灰色
badBG.pattern_fore_colour = 23
style.pattern = badBG
# 删除线
style.font.struck_out = True
sheet.write(row, col, each_row[each_col], style)
col += 1
row += 1
sf = StringIO.StringIO() # StringIO 此模块可以学习下
xls.save(sf)
contents = sf.getvalue()
sf.close()
return contents def _make_normal_style(self):
style_normal = ExcelWrite.XFStyle() # 设置excel的样式
style_normal.alignment.wrap = 1
return style_normal def _make_date_style(self):
style_date = ExcelWrite.XFStyle()
style_date.alignment.wrap = 1
style_date.num_format_str = u'mm月dd日'
return style_date # self 对象是继承了tornado.web.RequestHandler的派生类
def _send_download(self, file_name, data):
self.set_header('Content-Type', 'application/octet-stream')
self.set_header('Content-Disposition', 'attachment; filename=' + file_name)
self.write(data) # 将数据写回到网页客户端
self.finish() # 调用生成excel数据
excel_data = self._make_excel(data)
if excel_data:
self._send_download('1.xls', excel_data)
else:
pass

Python使用xlwt模块 操作Excel文件的更多相关文章

  1. 用Python的pandas框架操作Excel文件中的数据教程

    用Python的pandas框架操作Excel文件中的数据教程 本文的目的,是向您展示如何使用pandas 来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其 ...

  2. python使用xlrd模块读写Excel文件的方法

    本文实例讲述了python使用xlrd模块读写Excel文件的方法.分享给大家供大家参考.具体如下: 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi ...

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

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

  4. 记录python接口自动化测试--把操作excel文件的方法封装起来(第五目)

    前面补充了如何来操作excel文件,这次把如何获取excel文件的sheet对象.行数.单元格数据的方法进行封装,方便后面调用 handle_excel.py# coding:utf-8 import ...

  5. Python自动化办公之操作Excel文件

    模块导入 import openpyxl 读取Excel文件 打开Excel文件 workbook = openpyxl.load_workbook("test.xlsx") 输出 ...

  6. Python使用openpyxl模块操作Excel表格

    ''' Excel文件三个对象 workbook: 工作簿,一个excel文件包含多个sheet. sheet:工作表,一个workbook有多个,表名识别,如"sheet1",& ...

  7. xlwt 模块 操作excel

    1.xlwt 基本用法 import xlwt #1 新建文件 new_file = open('test.xls', 'w') new_file.close() #2 创建工作簿 wookbook ...

  8. Python小实验——读&写Excel文件内容

    安装xlrd模块和xlwt模块 读取Excel文件了内容需要额外的模块-- \(xlrd\),在官网上可以找到下载:https://pypi.python.org/pypi/xlrd#download ...

  9. python第三方库——xlrd和xlwt操作Excel文件学习

    python第三方库——xlrd和xlwt操作Excel文件学习 1安装: C:\Users\Lenovo>pip install xlwtCollecting xlwt  Downloadin ...

随机推荐

  1. Spring+MyBatis实现数据库读写分离方案

    推荐第四种:https://github.com/shawntime/shawn-rwdb 方案1 通过MyBatis配置文件创建读写分离两个DataSource,每个SqlSessionFactor ...

  2. window.open 子窗口关闭刷新父页面

    function JsMod(htmlurl,tmpWidth,tmpHeight){ htmlurl=getRandomUrl(htmlurl); var winObj = window.open( ...

  3. 2018/11/5 每日分析-test

    郑醇1901,M30向上一笔中,只是看起来不太值得做,主要因为现在30分钟向上一笔空间无法判定,未必能上去(M5中枢如果向上突破并且不背驰才可能有机会:如果直接下去或者向上后背驰,那么这里就只是一个M ...

  4. ubuntu下 net core 安装web模板

    ---恢复内容开始--- 今天想试试在Linux用C#开发WebAPI,查了下,要用: dotnet new -t Web 来建立工程,结果我试了下,出来这段: Invalid input switc ...

  5. 普通数组和json数组的区别

    PHP 数组 什么是数组? 数组是特殊的变量,它可以同时保存一个以上的值. 在 PHP 中创建数组 在 PHP 中, array() 函数用于创建数组 在 PHP 中,有三种数组类型: 索引数组 - ...

  6. tips:Java中的switch的选择因子

    tips:Java中的switch的选择因子! /*  switch(){   }  */ switch的()中的判断条件能是什么类型呢? 事实上,在我们学习c++的了解中,switch的参数是一个能 ...

  7. tips:Java中while的判断条件

    tips:Java中while的判断条件! 在c++中,有时候会遇到这种情况: while(x = y){ dosomething; } 如果x与y相等,这个时候如果循环体中没有跳出的点,那么会无限循 ...

  8. 17 RAID与mdadm管理命令

    在"14 磁盘及文件系统管理详解"中,我们详细介绍了磁盘的工作原理,但是,有一点我们一定要明白,作为现在存储数据的主要设备,机械磁盘早就是上个世纪的产品,而它的读写速度与内存.CP ...

  9. Java - 34 Java 文档注释

    Java 文档注释 Java只是三种注释方式.前两种分别是// 和/* */,第三种被称作说明注释,它以/** 开始,以 */结束. 说明注释允许你在程序中嵌入关于程序的信息.你可以使用javadoc ...

  10. CS229 6.11 Neurons Networks implements of self-taught learning

    在machine learning领域,更多的数据往往强于更优秀的算法,然而现实中的情况是一般人无法获取大量的已标注数据,这时候可以通过无监督方法获取大量的未标注数据,自学习( self-taught ...