XlsxWriter写入excel文件

唐黎琦

【摘要】

在日常开发中,我们经常会遇到需要将数据导出为excel的场景,XlsxWriter作为专门写入excel文件的python库,对excel文件的写入有非常好的支持,本文对XlsxWriter的各种操作做了简单的说明。

【正文】

1.优点

一、功能比较强

相对而言,这是除Excel自身之外功能最强的工具了。比如我就用到了它提供的:字体设置、前景色背景色、border设置、视图缩放(zoom)、单元格合并、autofilter、freeze panes、公式、data validation、单元格注释、行高和列宽设置等等。

二、支持大文件写入

如果数据量非常大,可以启用constant memory模式,这是一种顺序写入模式,得到一行数据就立刻写入一行,而不会把所有的数据都保持在内存中。

2.缺点

一、不支持读取和修改

不能读取,也就无从修改了。它只能用来创建新的文件。我是利用xlrd把需要的信息读入后,用XlsxWriter创建全新的文件。

另外,即使是创建到一半Excel文件,也是无法读取已经创建出来的内容的(信息应该在,但是并没有相应的接口)。因为它的主要方法是write而不是set。当你在某个单元格写入数据后,除非你自己保存了相关的内容,否则还是没有办法读出已经写入的信息。从这个角度看,你无法做到读出->修改->写回,只能是写入->写入->写入。

二、不支持XLS文件

XLS是Office 2013或更早版本所使用的格式,是一种二进制格式的文件。XLSX则是用一系列XML文件组成的(最后的X代表了XML)一个压缩包。如果非要创建低版本的XLS文件,就请移步xlwt吧。

三、暂时不支持透视表(Pivot Table)

3.基本操作方法

l

import xlsxwriter

f = xlsxwriter.Workbook()    #创建文件

l创建工作表

worksheet1= f.add_worksheet('操作日志')  #括号内为工作表表名

l添加工作表样式

样式有很多属性,更多具体样式请参考。

bold = f.add_format({

'bold':True,#字体加粗

'border':1,#单元格边框宽度

'align':'left',#水平对齐方式

'valign':'vcenter',#垂直对齐方式

'fg_color':'#F4B084',#单元格背景颜色

'text_wrap':True,#是否自动换行

})

l写入单个单元格数据

//row:行,col:列,data:要写入的数据, bold:单元格的样式

worksheet1.write(row,col, data, bold)

l写入一整行,一整列

//A1:从A1单元格开始插入数据,按行插入,data:要写入的数据(格式为一个列表),bold:单元格的样式

worksheet1.write_row(“A1”,data,bold)

//A1:从A1单元格开始插入数据,按列插入,data:要写入的数据(格式为一个列表),bold:单元格的样式

worksheet1.write_column(“A1”,data,bold)

l插入图片

//第一个参数是插入的起始单元格,第二个参数是图片你文件的绝对路径

worksheet1.insert_image('A1','f:\\1.jpg')

l写入超链接

worksheet1.write_url(row,col,"internal:%s!A1"%("要关联的工作表表名"),string="超链接显示的名字")

l插入图表

workbook.add_chartsheet(type="")

参数中的type指的是图表类型,图表类型示例如下:

[area:面积图,bar:条形图,column:直方图,doughnut:环状图,line:折线图,pie:饼状图,scatter:散点图,radar:雷达图,stock:箱线图]

l获得当前excel文件的所有工作表

workbook.worksheets()

workbook.worksheets()用于获得当前工作簿中的所有工作表,这个函数的存在便利了对于工作表的循环操作,如果你想在当前工作簿的所有工作表的A1单元格中输入一个字符创‘Hello xlsxwriter’,那么这个命令就派上用场了。

l

workbook.close()

这个命令是使用xlsxwriter操作Excel的最后一条命令,一定要记得关闭文件。

xlsxwriter写行合并_XlsxWriter写入excel文件相关推荐

  1. xlsxwriter写行合并_使用xlsxwriter将pandas数据框写入excel并包含“write-rich”字符串格式...

    以下是可复制的,并产生所需的输出. import xlsxwriter, pandas as pd workbook = xlsxwriter.Workbook('pandas_with_rich_s ...

  2. xlsxwriter写行合并_使用实现XlsxWriter创建Excel文件并编辑

    之前操作Excel使用过其他的方式,针对Excel的写入来说,使用过xlwt模块,也直接使用过win32com接口.如果说哪个最能够发挥Excel的威力,那么肯定是win32com接口实现的方式,然而 ...

  3. python 通过openpyxl来操作Excel文件(二 ):写入Excel文件

    这篇文章讲python 通过openpyxl来写入Excel文件,不清楚python怎么读取Excel文件的小伙伴可以去看下我的另一篇文章 传送门https://blog.csdn.net/i_cof ...

  4. java代码里的JSON格式怎么写好看_python3 循环读取excel文件并写入json操作

    文件内容: excel内容: 代码: import xlrdimport jsonimport operatordef read_xlsx(filename): # 打开excel文件 data1 = ...

  5. python xlwt写入数据超过范围限制_用xlrd包读取Excel文件-尽量不用xlwt包写入Excel文件最多能支持65536行数据。...

    1. 引有包 import xlrd1 打开文件 data = good_ivy = xlrd.open_workbook(r'商品库存.xls')1 2 获取你要打开的sheet文件 # table ...

  6. oracle写excel文件,ORACLE-将oracle数据库中数据写入excel文件

    ORACLE-将oracle数据库中数据写入excel文件主要实现思路: 1.声明一个纪录,用来存储导出的数据: 2.使用游标取数据到纪录中: 3.使用utl_file将纪录中的数据写入excel文件 ...

  7. matlab 循环写excel文件,matlab数据自动循环写入excel文件

    功能说明: 1.表格第一行(1)要留着添加表头描述,同时也可以随时向表格手工添加数据,因此不能用计数进行循环 第一列(A)为时间戳字符串(如20150413123415).每次运行程序就存储一次数据, ...

  8. 合并数据 - 合并多个Excel文件并转成CSV - Python代码

    在工作中,有时候因为部门间的数据权限问题,推送数据的时候往往是通过邮件完成,对于量大的数据,往往会拆成很多个excel发送,到下一个部门导入数据库之前,总是需要先将所有excel合成一个excel,再 ...

  9. python读取excel内容和写入_Python读取和写入Excel文件

    制作Excel表 常用方法说明 Workbook类 Workbook类创建一个XlswWrite的Workbook对象,相当于创建一个excel表 And_worksheet()用来创建工作表,默认为 ...

最新文章

  1. 【力扣网练习题】最长公共前缀
  2. mysql 函数的参数_MySQL中的数值函数
  3. Linux C编程--临时文件
  4. 【php数组函数序列】之array_combine() - 数组合并
  5. 如何保证数据库服务器的安全性
  6. 特征和工具概览(SQL Server 2008)
  7. 全球及中国昆虫类宠物食品行业竞争潜力与盈利价值分析报告2022版
  8. 一个数里有那些约数用c++怎么做_两数的最大公约数你会求吗?(内附完整算法代码)...
  9. 入门Pandas不可不知的技巧
  10. Python 查看服务器磁盘信息
  11. web input光标的颜色
  12. 【线段树】矮人排队(jzoj(gz) 3236)
  13. java btrace_BTrace:Java开发人员工具箱中的隐藏宝石
  14. idea中二级包为什么创建不了_IDEA通过Maven打包JavaFX工程(OpenJFX11)
  15. linux 备份mysql并上传_Linux 网站目录和MySQL备份并上传FTP
  16. 青铜器RDM与PTC Windchill协同构建货真价实的PLM解决方案
  17. android 工程模式设置中文翻译,MTK工程模式(中文对照版本)与测试模式指令.doc
  18. GIF动态表情图如何制作
  19. 音频(七)——数字麦克风和模拟麦克风(DMIC/AMIC)
  20. matlab分段函数的表达_【MATLAB】06_分段函数的多种表示方法

热门文章

  1. 0基础学习C语言视频
  2. SuperMap iDesktop常见问题解答集锦(十)
  3. Java数据结构之双向链表(配图详解,简单易懂)
  4. python 之 面向对象(成长笔记)
  5. 以下描述java字符串错误的是_浙江理工大学java题库
  6. cognos配置oracle数据源连接,Cognos连接Oracle数据库
  7. WindowsCMD中的简单常用代码
  8. html返回底部代码,jQuery实现的个性化返回底部与返回顶部特效代码
  9. 东华大学c语言上机试题,C语言上机考试经典100题--南开大学出品
  10. java ssh框架面试题_五道关于SSH框架的面试题