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 相关文章推荐
python的staticmethod与classmethod实现实例代码
Feb 11 Python
Python中一些不为人知的基础技巧总结
May 19 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
Aug 02 Python
Python图像处理之图像的读取、显示与保存操作【测试可用】
Jan 04 Python
Python常见数据结构之栈与队列用法示例
Jan 14 Python
Python可变参数会自动填充前面的默认同名参数实例
Nov 18 Python
利用python绘制数据曲线图的实现
Apr 09 Python
pandas to_excel 添加颜色操作
Jul 14 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
Sep 09 Python
python如何绘制疫情图
Sep 16 Python
Python调用飞书发送消息的示例
Nov 10 Python
用python读取xlsx文件
Dec 17 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
PHP MySQL应用中使用XOR运算加密算法分享
2011/08/28 PHP
解析php如何将日志写进syslog
2013/06/28 PHP
php防止伪造数据从地址栏URL提交的方法
2014/08/24 PHP
php正则去除网页中所有的html,js,css,注释的实现方法
2016/11/03 PHP
use jscript List Installed Software
2007/06/11 Javascript
javascript multibox 全选
2009/03/22 Javascript
Jquery多选下拉列表插件jquery multiselect功能介绍及使用
2013/05/24 Javascript
js保留小数点后几位的写法
2014/01/03 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
javaScript如何跳出多重循环break、continue
2016/09/01 Javascript
Zabbix添加Node.js监控的方法
2016/10/20 Javascript
Centos7 中安装 Node.js v4.4.4
2016/11/03 Javascript
Vue.js中用v-bind绑定class的注意事项
2016/12/13 Javascript
js上传图片预览的实现方法
2017/05/09 Javascript
nodejs+websocket实时聊天系统改进版
2017/05/18 NodeJs
JavaScript表单验证实现代码
2017/05/22 Javascript
JQ图片文件上传之前预览功能的简单实例(分享)
2017/11/12 Javascript
angularJs-$http实现百度搜索时的动态下拉框示例
2018/02/27 Javascript
深入浅出 Vue 系列 -- 数据劫持实现原理
2019/04/23 Javascript
[14:19]2018年度COSER大赛-完美盛典
2018/12/16 DOTA
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
python递归查询菜单并转换成json实例
2017/03/27 Python
python读取与写入csv格式文件的示例代码
2017/12/16 Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
2019/02/13 Python
Pandas操作CSV文件的读写实现方法
2019/11/13 Python
解决python3.6用cx_Oracle库连接Oracle的问题
2020/12/07 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
python3.9和pycharm的安装教程并创建简单项目的步骤
2021/02/03 Python
美国成衣女装品牌:CHICO’S
2016/09/19 全球购物
现代生活方式的家具和装饰:Dot & Bo
2018/12/26 全球购物
高中军训的心得体会
2014/09/01 职场文书
住房抵押登记委托书
2014/09/27 职场文书
2015年语文教研组工作总结
2015/05/23 职场文书
2015年小学美术工作总结
2015/05/25 职场文书
办公用品管理制度
2015/08/04 职场文书
SpringMVC 整合SSM框架详解
2021/08/30 Java/Android