Skip to content

2.1.Excel表格自动化

组合xlrd、xlwt、xlutils实现excel读写操作

需要多个第三方库配合使用,互补各自的缺陷,我们才可以完美地控制Excel表格。

xlrd的主要作用是读取工作簿中的数据,而xlwt的主要作用是将数据写入工作簿中。

xlrd只能读数据,而xlwt只能写数据,两者之间缺乏一个“桥梁”进行数据沟通,而xlutils可以“优雅”地解决这个问题。

使用openpyxl实现excel的读写修改

openpyxl相较于xlrd、xlwt,有更丰富的功能,通过openpyxl可以对工作簿进行读写及修改操作。

openpyxl同时支持*.xls与*.xlsx格式的工作簿,不用再考虑格式问题。但openpyxl就是对Excel中的VBA(Visual Basic for Applications)支持并不友好。

read_only模式下,openpyxl可以使用恒定的内存来处理无限的数据,其原理就是先处理一部分数据,处理完后,释放占用的内存,然后继续读入部分数据进行处理。这种方式可以快速读取大型工作簿中的数据。

使用xlwings模块操控excel文档

首先导入xlwings模块——一款非常强大的操控Excel的模块。

xlwings模块能与Excel VBA结合使用,实现强大的数据输入和分析功能。

使用Pandas轻松处理多个excel工作薄

Pandas是Python中分析结构化数据的工具集,它基于NumPy(提供高性能矩阵运算的第三方库),拥有数据挖掘、数据分析和数据清洗等功能,广泛应用于金融、经济、统计等不同领域。

要理解Pandas,就必须先理解Series和DataFrame。

Pandas很多方法中都有inplace参数,该参数表示就地模式,在就地模式下操作数据不再需要申请额外内存,也无须将数据迁移过去,这减少了数据迁移产生的资源消耗,提高了Pandas处理数据的速度。

使用Pandas无须担心多个工作簿、多个工作表的情况,Pandas可以轻松将多个工作簿中的任意工作表读入,然后一同处理。