文章目录

  • 1. 基础ExcelWriter
  • 2. engine='openpyxl'
  • 3. openpyxl模块

最近在 保存写入文件上进行了些许的研究,逛了一圈,记录一下。

总的来说,单纯的ExcelWriter是负责写入xlsx的模块,但也仅仅是写进去,而openpyxl和xlsxwriter是可以对xlsx文件进行格式编辑的(其中xlsxwriter不能对已有的文件进行编辑),这也是为什么Excelwriter里面需要有一个engine的,这样的话,就可以结合三者的优势了

在不设置engine的情况下,默认engine是xlsxwriter

1. 基础ExcelWriter

一般来说,建模的话只需要直接存储然后修改即可,这里直接存储的话可能会遇到一个问题,就是输出的excel为空。原因可能有两个:

  • 一是数据本身的索引是跳跃的,可以通过reset_index()进行调整
  • 二是按照一般的写入方式必须在后面加上writer.save()和writer.close(),否则数据就一直在数据流中,不会真正的保存到文件中去。还有一种方法就是with…as…魔法函数,可以帮助我们操作上下文管理器(context manager),自动分配并且释放资源,相当于代替了writer.save()和writer.close()
# 普通
import pandas as pddata=pd.DataFrame({'name':[1,2,3],'age':[2,3,4]
})
writer=pd.ExcelWriter('hh.xlsx')
data.to_excel(writer,sheet_name='hh')
writer.save()
writer.close()# with as
df1 = pd.DataFrame([["AAA", "BBB"]], columns=["Spam", "Egg"])
df2 = pd.DataFrame([["ABC", "XYZ"]], columns=["Foo", "Bar"])
with pd.ExcelWriter("path_to_file.xlsx") as writer:df1.to_excel(writer, sheet_name="Sheet1")  df2.to_excel(writer, sheet_name="Sheet2")

2. engine=‘openpyxl’

该引擎可以对已有的excel文件进行追加操作格式操作

import openpyxl
def daochu(data,file):#建立工作簿writer=pd.ExcelWriter(file,engine='openpyxl')# 写入文件数据,这里可以设置sheetname,也可以不设置data.to_excel(writer,index=False)# 工作表worksheets=writer.sheets# 对第一张表进行操作worksheet1=worksheets['Sheet1']# 设置格式worksheet1.insert_rows(idx=1,amount=1) # 插入行cell_0 = worksheet1.cell(1,1) # 找到单元格的位置cell_0.value = '59所EMS邮寄清单' # 设置这个单元格的值cell_0.alignment = Alignment(horizontal='center', vertical='distributed') # 设置对齐方式,水平对齐以及垂直对齐方式cell_0.font = Font(name="微软雅黑") #设置字体worksheet1.merge_cells('A1:E1') # 合并单元格

3. openpyxl模块

包括创建文件写内容、读入文件追加内容

from openpyxl import load_workbook
#追加
wb = load_workbook('files/p1.xlsx') #读入工作簿
sheet = wb.worksheets[0] # 工作表
# 找到单元格,并修改单元格的内容
cell = sheet.cell(1, 1)
cell.value = "新的开始"
# 将excel文件保存到p2.xlsx文件中
wb.save("files/p2.xlsx") #保存工作簿# 创建excel且默认会创建一个sheet(名称为Sheet)
wb = workbook.Workbook() #创建工作簿
sheet = wb.worksheets[0] # 或 sheet = wb["Sheet"]
# 找到单元格,并修改单元格的内容
cell = sheet.cell(1, 1)
cell.value = "新的开始"
# 将excel文件保存到p2.xlsx文件中
wb.save("files/p2.xlsx")

写入excel文件的ExcelWriter、openpyxl、xlsxwriter相关推荐

  1. python怎么用excel-Python怎么写入excel文件?详细实例在这里。。。

    本文概述 Python写入excel文件用于使用xlwt模块在电子表格上执行多项操作.这是将数据和格式信息写入扩展名为.xls的文件的理想方法. 如果你想将数据写入任何文件, 又不想自己做任何麻烦, ...

  2. Openpyxl:读取/写入Excel文件的Python模块

    Python openpyxl module is a native library to work with excel files. We can read excel files as well ...

  3. Pymediainfo读取文件夹视频长度并写入Excel文件(openpyxl)

    Pymediainfo读取文件夹视频长度并写入excel文件(openpyxl) 导入使用的module 路径设置以及初始化 获取全部文件名称与文件大小 获取视频详细信息并存储 时间统计并得到总秒数及 ...

  4. xlsxwriter写行合并_XlsxWriter写入excel文件

    XlsxWriter写入excel文件 唐黎琦 [摘要] 在日常开发中,我们经常会遇到需要将数据导出为excel的场景,XlsxWriter作为专门写入excel文件的python库,对excel文件 ...

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

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

  6. Pandas写入Excel文件如何避免覆盖已有Sheet

    Pandas是Python处理数据最好用的工具包.处理好了的数据,也可以写回到原来的或新的Excel文件.但如果处理结果要写入到多张表,就要注意了. 用Pandas把DataFrame数据写入Exce ...

  7. python导入excel类库_Python中使用第三方库xlutils来追加写入Excel文件示例

    Python中使用第三方库xlutils来追加写入Excel文件示例 目前还没有更好的方法来追写Excel,lorinnn在网上搜索到以及之后用到的方法就是使用第三方库xlutils来实现了这个功能, ...

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

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

  9. Python pandas把多个DataFrame对象写入Excel文件中同一个工作表

    问题描述: 在使用pandas进行数据分析和处理时,需要把相同的DataFrame对象中的数据按顺序先后写入同一个Excel文件中的同一个工作表中,纵向追加. 方法一: 数据量小,把所有DataFra ...

最新文章

  1. linux如何关闭防火墙
  2. 麦块我的世界怎么用java_麦块我的世界怎么玩啊?
  3. 基于php的应用程序,基于PHP的Web应用程序和群发邮件
  4. python画一片树叶_python画一片绿叶给你
  5. linux ora 00119,ORA-00119和ORA-00132的解决方案
  6. 移动端实现文字轮播_js实现移动端轮播图
  7. (九)Spring 事务开发、事务属性详解
  8. C#如何用Graphics画出一幅图表
  9. linux 穿件文件_关于Linux的25件事
  10. 不填写内容用哪个斜杠代替_python3用单反斜杠代替双反斜杠
  11. 使用EasyRecovery简单修复视频
  12. zoj 3599 Game 博弈论
  13. 控制台打印vue实例
  14. Hbase的MapReduce(Hbase权威指南)+ BulkLoad导入HBase
  15. 推荐一个好看且实用的火狐浏览器新标签页插件【火狐浏览器新标签页自定义美化】
  16. A股主要指数的市盈率(PE)估值高度
  17. 滴滴『技术高层』再生变,高级副总裁章文嵩将离职,他曾为阿里云CTO,投身开源20年...
  18. HTML5实现音频和视频嵌入,如何利用HTML5实现音频和视频嵌入的方法
  19. 用crontab每隔1分钟执行一个命令行脚本
  20. 自定义firefox背景色(豆绿色)

热门文章

  1. 常用DC-DC;AC-DC电源芯片
  2. 洛朗级数与泰勒展开的区别
  3. css 权重及!important
  4. 简易爬虫实现校园网剩余流量查询
  5. AutoDesk CAD如何彻底卸载/不影响二次安装
  6. Android调用系统自带的文件管理器进行文件选择
  7. c语言基础代码(基础代码编程)
  8. 重点知识学习(8.4)--[线程池 , ThreadLocal]
  9. 入职新人如何快速了解业务
  10. 【项目经验】最新最全ElasticSearch操作详解