openpyxl
介绍
处理Excel文件插件,可以实时读取/写入Excel文件。和panda相比能处理更大文件,但github和社区讨论度不足,维护缓慢。
安装
1 | pip install openpyxl |
代码调用
官方网站:(https://openpyxl.readthedocs.io/en/stable/tutorial.html)
1 | from openpyxl import load_workbook |
注意事项
打开地址报错
调用load_workbook()时如果出现报错可以注意下输入的地址,如:
1 | #错误示范,程序会认为'\'是分行符而报错 |
打包的程序运行缓慢
请尽量避免大量使用代码:
1 | WS.max_row |
程序会调用大量资源查询max_row,如果运行打包程序会奇慢无比(比VScode里慢30多倍),最好直接保存调用:
1 | max_row=WS.max_row |
从读取的sheetname无法打开sheet
如想使用读取sheetnames直接打开对应的sheet,需先处理下string格式:
1 | #remove [' '] inside original sheet name |
无法使用.save()
如果使用save()时报错找不到 tag.getchildren(), 可能是由python升级导致。该tag已在python 3.9之后被 list()替代,可在报错那行替换新的tag:
1 | #previous |
读取value缓慢
如果在openworkbook时enable了read_only会大大减慢每个单元格读取速度,推荐直接disable这块,虽然会减慢文件打开速度但不会影响cell check时效率。