23

我搜索了谷歌并发现了一些矛盾。xlwt 是否支持 xlsx 文件(MS office 2007)。听说 xlwt 0.7.4 支持 xlsx 文件。有没有人用 xlwt 0.7.4 尝试过 xlsx 文件写入操作

这个问题的目的是,如果我需要安装我没有安装库的权限,我需要提供更多详细信息。我需要在 python 中编写 xlsx 文件。所以如果有人做过类似的事情,它将有助于提供更好的信息

我已经查看了这个 wiki 页面。https://pypi.python.org/pypi/xlwt 但是没发现支持xlsx文件

还是我应该使用https://pypi.python.org/pypi/openpyxl来编写 xlsx 文件

4

3 回答 3

18

openpyxl 保证写入 xlsx 文件。通过粗略阅读一些 xlwt 代码和文档/示例,我认为 xlwt 不支持 xlsx。如果 openpyxl 可以满足您的需要,为什么还要寻找其他地方呢?

编辑:使用 xlwt 版本 0.7.4 我尝试将文件另存为sample.xlsx. 在尝试打开它时,我收到一条not valid错误消息,所以暂时没有.xlsx文件。

于 2013-04-01T07:21:11.283 回答
15

xlwt 模块不支持 xlsx 格式。xlsx 文件格式与 xlwt 支持的 xls 格式完全不同。

作为替代方案,请查看XlsxWriter,它是一个用于创建 xlsx 文件的 Python 模块。

它支持许多 Excel 功能。查看文档或从示例开始。

于 2013-04-01T09:03:00.427 回答
3

2021 年更新:xlrd 已达到使用寿命(由于 xls 格式的安全问题)。您可以openpyxl用于读取和写入数据。xlsxwriter如果您正在编写大型文件并且写入性能至关重要,您也可以用于写入。请参阅:https ://openpyxl.readthedocs.io/en/stable/performance.html

2019 更新:xlwt不支持 xlsx 格式。

XlsxWriter 100% 兼容 xlsx,维护良好,口碑不错。

要读取 xlsx 文件,您可以使用xlrd.

Pandas如果您有读写要求并想要创建图形和图表,也可以使用。(Pandas 内部使用 XlsxWriter 模块来写入文件)。

PS - xlsx 中的最后一个 x 代表 XML。xlsx 是一个压缩的 Open XML 文件。尽可能使用 xlsx。xls 是旧的(专有)格式,它没有一些高级功能,如条件格式或冻结 col/rows 等。

于 2019-06-15T04:18:57.747 回答