一样寻常的工作和学习过程中充斥着大量excel操作,好比打开excel文件、盘算数据、生存数据、画图等等。python有诸多可以操作excel数据的模块如pandas,但想要一览完备的pandas是个相对巨大的工程,从操作excel出发python有更轻量的工具。本文将带大家认识一下python操作excel的模块——openpyxl,一个更容易上手的实用型模块。
windows安装:
openpyxl是第三方扩展库,通过 pip install openpyxl安装。
一样寻常excel的操作告急包罗创建、读、写、画图。
接下来我们逐一举行先容。
创建excel文件、sheet表
- openpyxl.Workbook()方法:创建excel对象
- object.create_sheet()方法:创建sheet
- object.save()方法:生存excel对象为当地文件
import openpyxl as oxworkbook = ox.Workbook() # 内存中创建一个新的excel对象worksheet_1 = workbook.create_sheet(title='sheetname', index=0) # 在指定位置插入新的sheetworkbook.save('./excel_project/newfile.xlsx') # newfile 定名文件,生存到同级的excel_project 文件夹中读excel操作
openpyxl.load_workbook()方法
workbook = ox.load_workbook('./excel_project/newfile.xlsx') # ###读excel文件worksheet = workbook['sheetname'] # 读某个sheetmsg = worksheet['A1'].value # 读单元格的内容print(worksheet)print(msg)# 运行结果:<class 'openpyxl.worksheet.worksheet.Worksheet'>Values写excel操作
worksheet['A5'] = 'Values' # 方式1:写入单元格,此时只在内存读写worksheet.cell(row=5, column=5, value='Values') # 方式2:写入单元格workbook.save('./excel_project/newfile.xlsx') # 生存当地以致可以直接向单元格写入公式,如:
worksheet['A5'] = '=B5/C5'但须要性不强。
既然利用python操作,就要构建关于数据处置处罚的函数,将excel数据读取后带入函数盘算,再将结果写入excel,如许显着高效很多且代码机动性高,数据模子也能根据实际须要随时修订。
其他
访问excel对象的一些属性:
- object.sheetnames:查察对象内全部sheet名称,返回列表格式
- sheet的append操作
- 单元格的切片操作(可获取范围内的单元格)
namelist = workbook.sheetnamesworksheet.append(['values1', 'values2', 0, 1])ranges = worksheet['A1':'C5']这里不外多先容了,感兴趣的同砚可自行实行。
画图
openpyxl并未提供操作画图的功能。
想要实现还需结合python的其他作图模块。这里先容一个比力便捷的更换方法,就是事先在excel里绘好透视表地区,再将盘算结果写入,借用excel的自身功能天生地区内的透视图。
openpyxl模块讲到这里就根本竣事了。
可以看到操作很简朴,但实战还要做到融汇贯通,将python的语法和模块有用结合起来,才能发挥出openpyxl实际的应用代价。 |