Best Open-Source Python Libraries for Excel


A light weight, zero dependency (only standard libs used), to the point (no bells and whistles) Microsoft Excel reader/writer python 2.7-3+ library. See documentation: docs

Sample - see docs - quick start guide for more examples:


  • Reader supports .xlsx and .xlsm file extensions.
  • Writer only supports .xlsx (no macros/buttons/graphs/formatting)


  • Does not support .xls (excel 97-2003 worksheet).
  • Does not support worksheet cell data more than 536,870,912 cells (32-bit list limitation).
  • Writer does not support anything other than writing values/formulas/strings.
  • Writing to existing workbooks will remove any macros/buttons/graphs/formatting!

In-work version 1.5

  • additional database indexing features
  • performance

pypi version 1.42

  • added support for pathlib file reading
  • bug fix: previous version did not handle merged cells properly
  • bug fix: database updates did not update maxcol maxrow if new data addition was larger than the initial dataset
  • bug fix: writexl that use linefeeds did not read in properly into readxl (fixed regex)
  • bug fix: writexl filepath issues

Why pylightxl over pandas/openpyxl

  • (compatibility +1, small lib +1) pylightxl has no external dependencies (only uses python built-in standard libs).
  • (compatibility +1) pylightxl was written to be compatible for python 2.7-3+ under one single pylightxl version. It does not impose rules on users to switch versions.
  • (small lib +1) pylightxl was written to simply read/write, thereby making the library small without any bells or whistles which makes it easy to compile with PyInstaller and other packagers
  • (user friendly +1) pylightxl was written to be as pythonic and easy to use as possible. Core developers actively survey Stack Overflow questions on working with excel files to tailor the API for most common problems.
  • (see xlrd before pylightxl) Note that the xlrd library is very similar in values to pylightxl, but with much more functionality! Please take a look at xlrd to see if it is a good fit for your project. So why pick pylightxl over xlrd that has much more to offer? Currently, xlrd does not have any active developers. Pylightxl is a new library aimed to help solve current excel data issues (as surveyed by Stack Overflow), please submit your suggestions to help improve this library together.


pylightxl is officially published on, however one of the key features of pylightxl is that it is packed light in case the user has pip and/or download restrictions, see docs - installation

pip install pylightxl


  • 290
  • 47
  • 26
  • License: MIT
  • Author: Viktor Kis
  • Last update: N/A