- xlrd 只能用于读取文件,不能用于写入文件;
- xlwt 只能用于写入文件(只能创建文件,不能打开现存文件),不能用于读取文件;但可以保存时候覆盖现存文件。
- xlutils 通过 .copy.copy 方法,将 xlrd 读取的文件复制之后给 xlwt 处理;相当于在 xlrd 与 xlwt 之间架起来了一座桥梁;
- xlrd 版本1.2.0 是可以同时读取 .xls 文件和 .xlsx 文件;
- xlrd 版本2.0.0 以后,只能用于读取 .xls 文件,不再支持 .xlsx 文件;
- 比较复杂的是 xlrd,其次是 xlwt,内容最少的是 xlutils,只用 .copy.copy 方法就可以;
xlwt的使用:
表格并写入、设置单元格样式、设置宽度/背景色/对齐方式、添加公式/超链接/日期,合并行和列,添加边框 python 包之 xlwt 操作 excel 教程 - sunnyeden - 博客园大神都是如何操作 excel 的https://www.cnblogs.com/sunnyeden/p/16054204.html
xlutils的使用
1、拷贝原文件
2、拷贝前获取原工作薄的信息
3、拷贝后获取新工作薄的信息
4、拷贝后直接修改文件内容
5、获取所有单元格索引坐标
6、修改单元格内元素
7、(改)函数:读取单元格索引,修改单元格内元素
8、(增)函数:添加多条数据
9、(查1)函数:以制表符分割,显示每行数据
10、(查2)函数:
excel常用操作封装函数:
https://www.jb51.net/article/267653.htm JS+Selenium+excel追加写入,使用python成功爬取京东任何商品 - 知乎
选择哪个
- 处理中小型数据,使用win32com包或xlwings包,VBA能做的它们基本都能做
- 处理大型数据,使用pandas包
- 做开发,用openpyxl包,它不依赖Excel,可以在计算机上没有安装Excel的情况下正常工作,还跨平台
openpyxl虽然操作Excel的功能强大,但读写性能过于糟糕,尤其是写大表时,会占用大量内存,开启read_only和write_only模式后对其性能有大幅提升,尤其是对读的性能提升很大,使其几乎不耗时。
pandas把Excel当作数据读写的容器,为其强大的数据分析服务,因此读写性能表现中规中矩,但其对Excel文件兼容性是最好的,支持读写.xls,.xlsx文件,且支持只读表中单一工作页。
同样支持此功能的库还有xlrd,但xlrd只支持读,并不支持写,且性能不突出,需要配合xlutils进行Excel操作。
xlsxwriter功能单一,一般用来创建.xlsx文件,写入性能中庸。
链接:https://www.zhihu.com/question/504963568/answer/2650990775
链接:https://www.zhihu.com/question/504963568/answer/2650990775
- xlrd是一个从Excel文件读取数据和格式化信息的库,支持.xls以及.xlsx文件。官方文档:http://xlrd.readthedocs.io/en/latest/
- xlwt是一个用于将数据和格式化信息写入旧Excel文件的库(如.xls)。官方文档:https://xlwt.readthedocs.io/en/latest/
- xlutils是一个处理Excel文件的库,依赖于xlrd和xlwt。它仅支持.xls文件的操作。官方文档:http://xlutils.readthedocs.io/en/latest/
- xlwings 简单强大,使用方便,可替代VBA。xlwings可以支持.xls读,支持.xlsx文件读写。官方文档:http://docs.xlwings.org/en/stable/index.html
- XlsxWriter 是一个用来写 .xlsx 文件格式的模块,但不能用来读取和修改 Excel 文件。官方文档:https://xlsxwriter.readthedocs.io/
- openpyxl是一个用于读取和编写Excel 2010 xlsx/xlsm/xltx/xltm文件的库。官方文档:https://openpyxl.readthedocs.io/en/stable/
- pandas是一个进行数据处理和分析的强大模块,有时也可以用来自动化处理Excel,官方文档:http://pandas.pydata.org/