excel已经成为必不可少的数据处理软件,几乎天天在用。python有很多支持操作excel的第三方库,xlwings是其中一个。
【python学习交流群】
关于xlwings
xlwings开源免费,能够非常方便的读写Excel文件中的数据,并且能够进行单元格格式的修改。
xlwings还可以和matplotlib、numpy以及pandas无缝连接,支持读写numpy、pandas数据类型,将matplotlib可视化图表导入到excel中。
最重要的是xlwings可以调用Excel文件中VBA写好的程序,也可以让VBA调用用Python写的程序。
xlwings安装和导入
本文python版本为3.6,系统环境为windows,在jupyter notebook中进行实验。
xlwings库使用pip安装:
pipinstall xlwings
xlwings导入:
importxlwingsasxw
xlwings实操
建立excel表连接
wb= xw.Book("e:\example.xlsx")
实例化工作表对象
sht= wb.sheets["sheet1"]
返回工作表绝对路径
wb.fullname
在单元格中写入数据
sht.range('A1').value="xlwings"
读取单元格内容
sht.range('A1').value
清除单元格内容和格式
sht.range('A1').clear()
获取单元格的列标
sht.range('A1').column
获取单元格的行标
sht.range('A1').row
获取单元格的行高
sht.range('A1').row_height
获取单元格的行高
sht.range('A1').row_height
xlwings与numpy、pandas、matplotlib互动
支持写入numpy array数据类型
importnumpyasnpimportnumpyasnp
支持将pandas DataFrame数据类型写入excel
import pandas as pddf = pd.DataFrame([[1,2], [3,4]], columns=['a','b'])sht.range('A5').value = df
xlwings与VBA互相调用
xlwings与VBA的配合非常完美,你可以在python中调用VBA,也可以在VBA中使用python编程,这些通过xlwings都可以巧妙实现。这里不对该内容做详细讲解,感兴趣的童鞋可以去xlwings官网学习。
总结
xlwings操作excel语法简单,功能强大,又很好结合了pandas、numpy、matplotlib等分析库,非常适合奔波于python和excel之间的童鞋,让你更轻松地分析数据!
网友评论