处理Excel的python库openpyxl、xlrd、xlwt、pandas有什么区别,搞懂它
openpyxl、xlrd、xlwt、pandas 都能处理 Excel 表格,但用途和适合的场景不同。今天做个总结:
| 库名 | 功能 | 支持格式 | 读 | 写 | 支持样式 | 备注 | 
| openpyxl | 全面的.xlsx处理库 | .xlsx(Excel2007+) | ✅ | ✅ | ✅ | 首选 | 
| xlrd | 读取.xls文件的老牌工具 | .xls(最多到Excel2003) | ✅ | x | x | 不支持.xlsx,过时 | 
| xlwt | 写入.xls文件的老牌工具 | .xls | x | ✅ | ✅ | 不支持.xlsx,过时 | 
| pandas | 用户数据分析 | .xlsx .xls csv | ✅ | ✅ | x | 适合读写数据,不管样式 | 
通过上面的对比,可以看出来现在主要是用openpyxl和pandas,前者精细处理表格,后者处理大批量数据。
【简单举例】
import pandas as pd# 读取
df = pd.read_excel("data.xlsx")# 写入
df.to_excel("out.xlsx", index=False)from openpyxl import load_workbookwb = load_workbook("data.xlsx")
ws = wb.active
ws['A1'] = "123"
wb.save("data.xlsx")
后面会写一些业务中用到的openpyxl的场景,大家敬请期待。
