电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

python各種excel寫入方式的速度對比

瀏覽:57日期:2022-07-05 18:35:11

經過實驗,新建一個excel表格,該表格擁有7個sheet,每個sheet有800條數據,其中最后一個sheet為空。

首先使用openpyxl進行寫入操作,代碼如下:

book = openpyxl.Workbook()auths = Auth.objects.filter(owner_id=1)filename = ’導出數據’for auth in auths: sheet = book.create_sheet(auth.name, index = 0) sheet.append([ _('書名'), _('作者'), _('譯者'), _('出版社'), _('序列號'), _('總頁數'), ]) objs = None objs = Book.objects.filter(owner_id=auth.id) for u in objs: data = [] data.append(u.name) data.append(auth.name) data.append(u.translator) data.append(u.press) data.append(u.serializer) data.append(u.page) sheet.append(data)return ExcelBookResponse(book, filename)

使用xlwt寫入數據:

book = xlwt.Workbook()auths = Auth.objects.filter(owner_id=1)filename = ’導出數據’for auth in auths: sheet = book.add_sheet(sensor.name) sheet.write(0, 0, _('書名')) sheet.write(0, 1, _('作者')) sheet.write(0, 2, _('譯者')) sheet.write(0, 3, _('出版社')) sheet.write(0, 4, _('序列號')) sheet.write(0, 5, _('總頁數')) i = 1 objs = None objs = Book.objects.filter(owner_id=auth.id) for u in objs: sheet.write(i, 0, u.name) sheet.write(i, 1, auth.name) sheet.write(i ,2,u.translator) sheet.write(i ,3,u.press) sheet.write(i, 4, u.serializer) sheet.write(i, 5, u.page) i += 1return ExcelBookResponse(book, filename)

使用XlsxWriter寫入數據:

book = xlsxwriter.Workbook(output)auths = Auth.objects.filter(owner_id=1)for auth in auths: sheet = book.add_worksheet(sensor.name) header = [ _('書名'), _('作者'), _('譯者'), _('出版社'), _('序列號'), _('總頁數'), ] sheet.write_row('A1', header) objs = Book.objects.filter(owner_id=auth.id) i = 1 for u in objs: sheet.write(i, 0, u.name) sheet.write(i, 1, auth.name) sheet.write(i ,2,u.translator) sheet.write(i ,3,u.press) sheet.write(i, 4, u.serializer) sheet.write(i, 5, u.page) i += 1book.close()file_ext = ’xlsx’mimetype = ’application/vnd.openxmlformats-officedocument.spreadsheetml.sheet’# self[’Content-Disposition’] = ’attachment; filename*=UTF-8’’'{2}.{1}'; filename='{0}.{1}'’.format(filename.replace(’'’, ’'’), file_ext, urllib.parse.quote(filename.replace(’'’, ’'’))).encode(’utf8’)return HttpResponse(content=output.getvalue(), content_type=mimetype)

三者的時間比較(兩種方式的文件內容是一樣的):

openpyxl: 文件大小為110.75kb, 平均時間大約為570ms

xlwt: 文件大小為505.91kb,平均時間大約為440ms

XlsxWrite: 文件大小為109.28kb,平均時間大約為500ms

xlwt寫入的行數有限制,因此對于較大的文件來說,XlsxWrite的速度較快一點

補充知識:python寫入excel文件太慢如何解決-python往excel寫入大量數據

目前用的openpyxl,從數據庫獲取8W行的數據通過openpyxl寫入excel,要花費接近8分鐘,這也太慢了,用kettle的插件秒進,python有什么方法能提升速度么,或者openpyxl能批量插入么,按行效率太低了

#!/usr/bin/python# -*- coding: UTF-8 -*-from openpyxl import Workbook as wbookdef xlsx(filename, rows_info, sheet=’Result’):if filename and sheet:wb = wbook()_sheet = wb.active_sheet.title = sheetrow = _sheet.max_rowfor line in rows_info:if isinstance(line, str):row_list = [line]elif isinstance(line, dict):row_list = list(line.values())else:try:row_list = list(line)except:row_list = []for col in range(0, len(row_list)):col_info = row_list[col]_sheet.cell(row, col + 1, col_info)row += 1wb.save(filename)else:return ’文件和sheet不能為空’

以上這篇python各種excel寫入方式的速度對比就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: python
相關文章:
主站蜘蛛池模板: 钣金加工厂家-钣金加工-佛山钣金厂-月汇好 | 光栅尺_Magnescale探规_磁栅尺_笔式位移传感器_苏州德美达 | 垃圾压缩设备_垃圾处理设备_智能移动式垃圾压缩设备--山东明莱环保设备有限公司 | 专业生物有机肥造粒机,粉状有机肥生产线,槽式翻堆机厂家-郑州华之强重工科技有限公司 | 冷藏车厂家|冷藏车价格|小型冷藏车|散装饲料车厂家|程力专用汽车股份有限公司销售十二分公司 | 光伏支架成型设备-光伏钢边框设备-光伏设备厂家 | 精密模具加工制造 - 富东懿 | 防腐储罐_塑料储罐_PE储罐厂家_淄博富邦滚塑防腐设备科技有限公司 | 活动策划,舞台搭建,活动策划公司-首选美湖上海活动策划公司 | 武汉创亿电气设备有限公司_电力检测设备生产厂家 | 结晶点测定仪-润滑脂滴点测定仪-大连煜烁 | 环球电气之家-中国专业电气电子产品行业服务网站! | SEO网站优化,关键词排名优化,苏州网站推广-江苏森歌网络 | 【直乐】河北石家庄脊柱侧弯医院_治疗椎间盘突出哪家医院好_骨科脊柱外科专业医院_治疗抽动症/关节病骨伤权威医院|排行-直乐矫形中医医院 | 泰来华顿液氮罐,美国MVE液氮罐,自增压液氮罐,定制液氮生物容器,进口杜瓦瓶-上海京灿精密机械有限公司 | 潍坊青州古城旅游景点攻略_青州酒店美食推荐-青州旅游网 | 防爆型气象站_农业气象站_校园气象站_农业四情监测系统「山东万象环境科技有限公司」 | 网站建设-临朐爱采购-抖音运营-山东兆通网络科技 | 道达尔润滑油-食品级润滑油-道达尔导热油-合成导热油,深圳道达尔代理商合-深圳浩方正大官网 | 阿里巴巴诚信通温州、台州、宁波、嘉兴授权渠道商-浙江联欣科技提供阿里会员办理 | 网站建设-高端品牌网站设计制作一站式定制_杭州APP/微信小程序开发运营-鼎易科技 | 薪动-人力资源公司-灵活用工薪资代发-费用结算-残保金优化-北京秒付科技有限公司 | 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | WTB5光栅尺-JIE WILL磁栅尺-B60数显表-常州中崴机电科技有限公司 | 电动葫芦|环链电动葫芦-北京凌鹰名优起重葫芦 | HYDAC过滤器,HYDAC滤芯,现货ATOS油泵,ATOS比例阀-东莞市广联自动化科技有限公司 | 交联度测试仪-湿漏电流测试仪-双85恒温恒湿试验箱-常州市科迈实验仪器有限公司 | 乐泰胶水_loctite_乐泰胶_汉高乐泰授权(中国)总代理-鑫华良供应链 | 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | 抖音短视频运营_企业网站建设_网络推广_全网自媒体营销-东莞市凌天信息科技有限公司 | 浙江寺庙设计-杭州寺院设计-宁波寺庙规划_汉匠 | 考勤系统_考勤管理系统_网络考勤软件_政企|集团|工厂复杂考勤工时统计排班管理系统_天时考勤 | 物联网卡_物联网卡购买平台_移动物联网卡办理_移动联通电信流量卡通信模组采购平台? | 自动检重秤-动态称重机-重量分选秤-苏州金钻称重设备系统开发有限公司 | 全自动包衣机-无菌分装隔离器-浙江迦南科技股份有限公司 | 农业仪器网 - 中国自动化农业仪器信息交流平台| 河北码上网络科技|邯郸小程序开发|邯郸微信开发|邯郸网站建设 | 耐酸碱胶管_耐腐蚀软管总成_化学品输送软管_漯河利通液压科技耐油耐磨喷砂软管|耐腐蚀化学软管 | 宿舍管理系统_智慧园区系统_房屋/房产管理系统_公寓管理系统 | 无轨电动平车_轨道平车_蓄电池电动平车★尽在新乡百特智能转运设备有限公司 | PVC地板|PVC塑胶地板|PVC地板厂家|地板胶|防静电地板-无锡腾方装饰材料有限公司-咨询热线:4008-798-128 |