pylightxl
A light weight excel read/writer for python27 and python3 with no dependencies
What it is and what it does
pylightxl is a single-file, zero-dependency Excel and CSV reader/writer for Python 2.7 through Python 3.x. It reads .xlsx and .xlsm files, extracts cell values (with type conversion to string, int, float), formulas, comments, and named ranges, and can write new Excel files or modify existing ones—though the writer is limited to cell data only (no formatting, images, or macros). The package is designed for projects that need lightweight Excel handling without pulling in heavy dependencies like pandas or openpyxl, making it suitable for constrained environments like Django apps, PyInstaller builds, or systems with download restrictions.
The API is structured around a database → worksheet → cell indexing model: you open a file into a database object, select a sheet, then retrieve values by row/column ID, Excel address (e.g., 'B1'), or range. Because it uses only standard library modules and is packaged as a single source file, you can even copy the source directly into your project to eliminate any external dependency altogether.
Use it for:
- Read Excel data in a Django or Flask app without adding heavy dependencies that slow deployment or increase build size.
- Extract specific columns or tables from .xlsx files by row/column index or named ranges for data processing pipelines.
- Generate Excel reports programmatically on servers where Excel is not installed, writing cell data to new or existing workbooks.
- Parse CSV and Excel files in environments with strict download or package restrictions by copying the single source file into your codebase.
- Build PyInstaller executables that handle Excel I/O without bloating the binary or causing dependency resolution failures.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Reads and writes Microsoft Excel files (.xlsx, .xlsm) and CSV files with zero external dependencies, using only Python standard library.
Yes, if you need lightweight Excel reading/writing and can accept the trade-offs: zero dependencies and small footprint are genuine strengths for constrained environments, but the dormant maintenance status (last release January 2023) means new Excel format edge cases or Python ecosystem changes may not be addressed quickly. Install if your use case is straightforward (basic read/write of standard .xlsx files) and you value simplicity over active support; reconsider if you need ongoing compatibility or advanced Excel features.
Install
pylightxl on PyPI
pip
pip install pylightxluv
uv add pylightxlpoetry
poetry add pylightxlInstalling pylightxl
Before you install
High install friction: the package is marked as dormant (last release 2023-01-01, 1321 days ago) with no runtime dependencies to manage, but the age of the codebase and lack of recent maintenance may signal limited responsiveness to new Excel format edge cases or Python ecosystem changes.
License in practice
MIT license is permissive; you may use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
Quickstart
pip install pylightxl
import pylightxl as xl
db = xl.readExcel('file.xlsx')
value = db.ws('Sheet1').address('A1')
Requires Python 2.7 or 3.x; does not support .xls files (Excel 2003 and older).
Verify before relying
- Whether the package handles all modern Excel format variations and edge cases created by non-Microsoft tools, given dormant maintenance status.
- Real-world performance and reliability on large worksheets approaching the 536,870,912 cell limit mentioned in limitations.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=2.7) |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | dormant — 1,321 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 270,978/month — #8,227 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pylightxl-1.61.tar.gz
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
openpyxlopenpyxl reads and writes Excel 2010…
permissive · top 1,000 on PyPI
xlsxwriterXlsxWriter creates Excel 2007+ XLSX files from…
permissive · top 1,000 on PyPI
spire-xlsSpire.XLS is a compiled Python library for…
unclear · top 15,000 on PyPI
pyexcel-xlsReads, manipulates, and writes data in xls…
permissive · top 5,000 on PyPI
pyxlsxProvides dictionary-like read and write access…
permissive · top 15,000 on PyPI
xlrd3Reads data from Excel spreadsheet files (.xls…
permissive · top 15,000 on PyPI
pyxlsbParses Excel 2007-2010 Binary Workbook (xlsb)…
copyleft · top 5,000 on PyPI
harfileWrites HTTP Archive (HAR) files in Python with…
permissive · top 5,000 on PyPI
python-calamineReads Excel and ODF spreadsheet files via a…
permissive · top 5,000 on PyPI
FlowIOFlowIO reads and writes Flow Cytometry Standard…
permissive · top 15,000 on PyPI