为什么是xlwings ?
之前给大家整理过Python用来处理Excel的全部可用库,以及它们的优缺点
每个人来学习都是想一步到位,不会考虑那些功能不全的库。
这其中最强大也最难学的库是Pandas
Pandas稍微有点难度,小白入门更适合今天这种简单又功能强大的库,如上图所示,符合小白学习的库有两个:xlwings和win32com。
xlwings具有以下优点:
- xlwings能够非常方便的读写Excel文件中的数据,并且能够进行单元格格式的修改
- 可以和matplotlib以及pandas无缝连接
- 可以调用Excel文件中VBA写好的程序,也可以让VBA调用用Python写的程序。
- 开源免费,一直在更新
我们今天就来讲解一下,xlwings如何使用~
xlwings的详细官方使用文档,获取方式见文末~
安装
工欲善其事必先利其器,如果是在开始xlwings之前,您还没有安装Python+开发工具,请花10分钟的时间,移步此链接:👉链接,先把Python+开发工具。
Python环境下安装(推荐)
pip install xlwings
Anaconda环境下安装
conda install xlwings
使用演示
1、打开/新建Excel文档
import xlwings as xw wb = xw.Book() # 新建一个文档 wb = xw.Book('test.xlsx') # 打开一个已有的文档
2、读取/写入数据
sht = wb.sheets['Sheet1'] # 找到指定sheet print(sht.range('A1').value) # 读取指定单元格的数据,这里读的是A1 sht.range('B1').value = 10 # 给指定的空白单元格赋值,这里赋值的是B1
3、保存文件、退出程序
wb.save(r'test.xlsx') #保存Excel文档,命名为test.xlsx,并保存在D盘 wb.close() # 退出程序,该步骤不可省略
4、连接pandas处理复杂数据
import pandas as pd df = pd.DataFrame([[1,2], [3,4]], columns=['a', 'b']) sht.range('A1').value = df sht.range('A1').options(pd.DataFrame, expand='table').value
5、连接Matplotlib 画图
import matplotlib.pyplot as plt fig = plt.figure() plt.plot([1, 2, 3, 4, 5]) sht.pictures.add(fig, name='MyPlot', update=True)
其他资源
因篇幅限制,这里只给大家演示基本操作,更多操作见使用文档。
xlwings的官网提供了使用文档:该文档说明了如何使用xlwings的所有功能,并包含完整的API参考。在示例中也很好地展示了xlwings的功能。