does xlwt support xlsx Format

2021 update: xlrd has reached End of Life (due to security concerns in the xls format). You can use openpyxl for reading and writing data. You may also use xlsxwriter for writing, if you’re writing huge files and write performance is critical. See: https://openpyxl.readthedocs.io/en/stable/performance.html

2019 update: xlwt doesn't support xlsx Format.

XlsxWriter is 100% compatible with xlsx, well-maintained and has a good reputation.

For reading xlsx files, you can use xlrd.

You can also use Pandas if you've read+write requirements and want to create graphs and charts. (Pandas internally uses XlsxWriter modules to write the files).

P.S. - The last x in xlsx stands for XML. xlsx is a zipped Open XML file. Use xlsx wherever possible. xls is the old (proprietary) format, which doesn't have some advanced features like conditional formatting or freezing col/rows etc.


The xlwt module doesn't support the xlsx format. The xlsx file format is completely different from the xls format supported by xlwt.

As an alternative have a look at XlsxWriter which is a Python module for creating xlsx files.

It supports a lot of Excel features. Have a look at the documentation or start with the examples.


openpyxl is guaranteed to write xlsx files. From a cursory read through some of the xlwt code and docs/examples, I don't think xlwt supports xlsx. If openpyxl does what you need it to do, why look elsewhere?

Edit: with xlwt version 0.7.4 I attempted to save a file as sample.xlsx. Upon attempting to open it I got a not valid error message, so no .xlsx files for now.

Tags:

Python

Xlwt