,因为xlwings
依赖pywin32
,而openpyxl
没有。
打开pyxl
“.xlsx”excel 文件本质上是一个 zip 文件,其中包含多个根据 Microsoft 的OOXML 规范格式化的 XML 文件。有了这个规范,就可以创建一个能够用几乎任何编程语言直接读/写 excel 文件的程序。这是应用的方法openpyxl
:它使用python代码直接读/写excel文件。
xlwings
Microsoft Excel 应用程序可以通过Win32 COM API由外部程序启动和控制。该pywin32
包提供了 Win32 COM 和 Python 之间的接口。通过带有正确 pywin32 命令的 python 脚本,您可以完全控制 Excel 应用程序(打开 excel 文件、从单元格查询数据、将数据写入单元格、保存 excel 文件等)。pywin32
您可以使用的命令反映了Excel VBA 命令,尽管使用的是 python 语法。
xlwings
是(除其他事项外)围绕pywin32
. 它介绍了几种简洁而强大的方法。一个例子是将 excel 单元格范围直接转换为 numpy 数组或 pandas 数据框(反之亦然)的方法。
概括
xlwings
和之间的根本区别openpyxl
是前者要求您的计算机上安装 MS Excel,而后者则不需要。