因工作中经常需要将系统中的数据或统计结果导出到excel表格中,对于动态生成表头的情况下,不便于将数据或统计结果写入到csv中,于是开始了解如何将数据写入到excel中。
Python的excel工具类
Python的excel工具类介绍,可参见 python-excel。
- openpyxl: 推荐用于读写 excel 2010 的文件(后缀 xlsx/xlsm/xltx/xltm)
- xlsxwriter: 可用于写数据到 excel 2010 的文件(后缀 xlsx)
- xlrd:可用于读 excel 2003 及以前的旧格式 excel 文件(后缀 xls)
- xlwt:可用于写 excel 2003 及以前的旧格式 excel 文件(后缀 xls)
- xlutils:将 xlrd 和 xlwt 进行了整合,可读和写excel 2003 及以前的旧格式 excel 文件(后缀 xls)
根据 pandas 参考文档中 IO工具类部分 关于 Excel写入引擎 的说明;默认情况下, pandas 使用 xlsxwriter 来写入 .xlsx 文件,使用 openpyxl 来写入 .xlsm 文件,使用 xlwt 来写入 .xls 文件;使用 xlrd 来读取 .xls 文件,使用 openpyxl 来读取 .xlsx 文件。
openpyxl的使用
下面重点介绍一下 openpyxl 的使用。
Excel 中有以下的三大对象:
- WorkBook:工作簿对象
- Sheet:表单对象
- Cell:单元格对象
创建一个excel文件
1 |
|
打开指定名称的excel文件
1 |
|
获取第一个表单
1 |
|
创建一个新表单
1 |
|
根据名称打开指定表单
1 |
|
删除一个新表单
1 |
|
修改表单名称
1 |
|
按行读取数据
1 |
|
读取指定单元格
操作excel的单元格时,第1行A列的坐标是 row = 1, column = 1
1 |
|
写入指定单元格
1 |
|
合并单元格
1 |
|