用 Python 处理Excel表格的几个常规库:
- xlrd 用来读
- xlwt 用来写
- xlutils 用于做复制、筛选等针对文档文件的操作
这些库都不如OpenPyXL 强大, OpenPyXL 即可以读也可以写 Excel 2010+ 的 xlsx xlsm xltx xltm 文件。不过, OpenPyXL 库也是比较吃内存的,大约是原始文件的5倍左右。例如,一个50M大小的Excel文件,需要2.5G大小的内存运行。关于以上几个库的性能比对,请移步OpenPyXL性能测试。
记得关注小编后私信【学习】领取Python学习教程哦。
安装
在终端中输入命令,如下:
pip install openpyxl
openpyxl 在保存Excel表格时候会丢失原文件的图片和图表。如果要操作图片,则需要 pillow 库,安装如下:
pip install pillow
由于最近军运会要在天朝举行,因此必须翻-墙才能安装。
使用方法
新建Excel表格
新建Excel表格,默认有一个名为 Sheet 的表格,如下:
from openpyxl import Workbookwb = Workbook() #创建文件对象ws = wb.active #获取默认sheetwb.save("sample.xlsx")
打开已有的Excel表格
对已有的Excel表格进行操作,如下:
from openpyxl import Workbook, load_workbookwb = load_workbook('sample.xlsx')wb.save("sample.xlsx")
新建/获取Sheet表格
使用 Workbook.create_sheet() 方法新建Sheet表格。第一个参数是sheet名称,若不填,则默认以 Sheet1 Sheet2 Sheet3 ...方式命名;第二个参数是插入Sheet表格的位置,以 0 为第一个位置,若不填,则置于最后。如下:
ws1 = wb.create_sheet("Mysheet") #默认在最后插入ws2 = wb.create_sheet("Mysheet