python 数据生成excel导出(xlwt,wlsxwrite)代码实例


Posted in Python onAugust 23, 2019

这篇文章主要介绍了python 数据生成excel导出(xlwt,wlsxwrite)代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

话不多说,看代码:

from xlwt import *
import StringIO
from apps.song.models import Song
def excel_ktvsong(request):

 """
导出excel表格
"""

 _id = request.GET.get('id', 0)

 list_obj = Song.objects.filter(is_delete__exact=False)
 # django orm 
 if list_obj:
 # 创建工作薄

  ws = Workbook(encoding='utf-8')

  w = ws.add_sheet(u"歌曲列表")

  w.write(0, 0, u"歌曲名称")

  w.write(0, 1, u"歌手")

  # 写入数据

  excel_row = 1

  for obj in list_obj:

   data_song = obj.song

   data_singer_name = obj.singer_name

   w.write(excel_row, 0, data_song)

   w.write(excel_row, 1, data_singer_name)


   excel_row += 1


  sio = StringIO.StringIO()

  ws.save(sio)

  sio.seek(0)

  response = HttpResponse(sio.getvalue(),   
  content_type='application/vnd.ms-excel')

  response['Content-Disposition'] = 'attachment;filename=%s.xls' % time.strftime('%Y%m%d%H%M%S')

  response.write(sio.getvalue())

  return response

 else:

  return HttpResponse("无数据")

上边我也是盗的,只不过当时有需求,数据量大只能用xlsxwriter,然后下边是我用xlsxwriter写的,边学边写,还请多多关照:

import xlsxwriter,StringIO
    output = StringIO.StringIO()
    workbook = Workbook(output)
    if id:
      sheet_name = _(u"vvv")
      w = workbook.add_worksheet(sheet_name)
    else:
      sheet_name = _(u"vvvvvvv")
      w = workbook.add_worksheet(sheet_name)
""" 表格单元格样式"""
    head_cell_xf = workbook.add_format({
      'font_name': 'SimSun',
      'bold': True,
      'text_wrap': True,
      'valign': 'vcenter',
      'align': 'left',

      'bg_color': 'gray',
      'pattern': 1,
      'bottom': 1,
      'left': 1,
      'right': 1,
      'top': 1,
    })
    body_cell_xf = workbook.add_format({
      'font_name': 'SimSun',
      'text_wrap': True,
      'valign': 'vcenter',
      'align': 'left',

      'bg_color': 'gray',
      'pattern': 1,
      'bottom': 1,
      'left': 1,
      'right': 1,
      'top': 1,
    })

    w.write(0, 0, 'xxxx', head_cell_xf)
    w.write(0, 1, u'xxxx', head_cell_xf)
    w.set_column(1, 0, 18)
    w.set_column(1, 1, 100)
    excel_row = 1
    # cve_id = set()
    # i18n_name = set()
    data={}
    if id:
      res = xx.objects.get(id=id)
      res = res.vuls.split(';')
      for re in res:
        re = xx.objects.get(pk=xx)
        data[re.cve_id]=re.i18n_name[1]
        # w.write(excel_row, 0, re.cve_id,body_cell_xf)
        # w.write(excel_row, 1, re.i18n_name[1], body_cell_xf)
        # cve_id.add(re.cve_id)
        # cve_id.add(re.i18n_name[1])
        excel_row += 1
        progress_status = excel_row*100/len(res) # 获取进度

    else:
      res = xx.objects.get(pk=xx)
      res = res.white_list.split(',')
      for re in res:
        re = Vuln.objects.get(vul_id=re)
        data[re.cve_id] = re.i18n_name[1]
      
        excel_row += 1
        progress_status = excel_row * 100 / len(res)  # 获取进度
    w.write_column('A2', data.keys(), body_cell_xf)
    w.write_column('B2', data.values(), body_cell_xf)
    workbook.close()
    response = HttpResponse(output.getvalue(),
                content_type='application/octet-stream')
    response['Content-Disposition'] = 'attachment;filename=%s.xlsx' % xxx
    response.write(output.getvalue())
    progress_status = 0
    return response

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
django中的setting最佳配置小结
Nov 21 Python
Python爬虫实现爬取京东手机页面的图片(实例代码)
Nov 30 Python
wxPython的安装图文教程(Windows)
Dec 28 Python
浅谈Pandas中map, applymap and apply的区别
Apr 10 Python
Python基于分析Ajax请求实现抓取今日头条街拍图集功能示例
Jul 19 Python
python 批量解压压缩文件的实例代码
Jun 27 Python
新手入门Python编程的8个实用建议
Jul 12 Python
Python 转换RGB颜色值的示例代码
Oct 13 Python
python操作cfg配置文件方式
Dec 22 Python
基于python实现微信好友数据分析(简单)
Feb 16 Python
10行Python代码实现Web自动化管控的示例代码
Aug 14 Python
Python实现日志实时监测的示例详解
Apr 06 Python
python @classmethod 的使用场合详解
Aug 23 #Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
Aug 23 #Python
python 类的继承 实例方法.静态方法.类方法的代码解析
Aug 23 #Python
Python中最好用的命令行参数解析工具(argparse)
Aug 23 #Python
详解Python并发编程之创建多线程的几种方法
Aug 23 #Python
详解Python并发编程之从性能角度来初探并发编程
Aug 23 #Python
python Kmeans算法原理深入解析
Aug 23 #Python
You might like
YII路径的用法总结
2014/07/09 PHP
php实现通过stomp协议连接ActiveMQ操作示例
2020/02/23 PHP
PHP7修改的函数
2021/03/09 PHP
用javascript实现在小方框中浏览大图的代码
2007/08/14 Javascript
javascript CSS画图之基础篇
2009/07/29 Javascript
js Date自定义函数 延迟脚本执行
2010/03/10 Javascript
js触发select onchange事件的小技巧
2014/08/05 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
JS制作手机端自适应缩放显示
2015/06/11 Javascript
jQuery焦点图轮播效果实现方法
2016/12/19 Javascript
浅谈键盘上回车按钮的js触发事件
2017/02/13 Javascript
jQuery使用DataTable实现删除数据后重新加载功能
2017/02/27 Javascript
Vue实现百度下拉提示搜索功能
2017/06/21 Javascript
Vue中父组件向子组件通信的方法
2017/07/11 Javascript
Python算法之栈(stack)的实现
2014/08/18 Python
Python读取csv文件分隔符设置方法
2019/01/14 Python
Python使用itchat模块实现群聊转发,自动回复功能示例
2019/08/26 Python
浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
2020/06/30 Python
完美解决TensorFlow和Keras大数据量内存溢出的问题
2020/07/03 Python
python集合能干吗
2020/07/19 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
python 操作excel表格的方法
2020/12/05 Python
CSS Houdini实现动态波浪纹效果
2019/07/30 HTML / CSS
利用HTML5 Canvas制作键盘及鼠标动画的实例分享
2016/03/15 HTML / CSS
UNIONBAY官网:美国青少年服装品牌
2019/03/26 全球购物
汽车检测与维修个人求职信
2013/09/24 职场文书
大学生职业生涯规划书前言
2014/01/09 职场文书
幼儿园教师奖惩制度
2014/02/01 职场文书
商铺租赁意向书
2014/04/01 职场文书
物流专业求职信
2014/06/30 职场文书
2014县委书记党的群众路线教育实践活动对照检查材料思想汇报
2014/09/22 职场文书
2014年医院个人工作总结
2014/12/09 职场文书
2015年社区妇联工作总结
2015/04/21 职场文书
任长霞观后感
2015/06/16 职场文书
详解Python自动化之文件自动化处理
2021/06/21 Python
CSS巧用渐变实现高级感背景光动画
2021/12/06 HTML / CSS