pyexcel-ods3
A wrapper library to read, manipulate and write data in ods format
What it is and what it does
pyexcel-ods3 is a wrapper around ODS file handling that lets you read spreadsheet data into Python dictionaries or write dictionaries back to ODS files. It works as both a standalone library and as a plugin for pyexcel, the larger spreadsheet abstraction framework. The library depends on pyexcel-io for format dispatch, lxml for XML parsing, and pyexcel-ezodf for ODS-specific operations.
The package is designed for developers who need to work with ODS files but want to focus on data manipulation rather than format details. It supports reading and writing entire sheets, working with in-memory streams, and pagination (though pagination reads the entire file first). Fonts, colors, charts, and password-protected files are not supported.
Use it for:
- Extract tabular data from ODS files into Python for analysis or transformation.
- Generate ODS spreadsheets programmatically from Python data structures.
- Integrate ODS file handling into a pyexcel-based data pipeline.
- Convert ODS data to and from memory buffers for web uploads and downloads.
- Read partial data from large ODS files using row and column limits.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Reads, manipulates, and writes data in ODS (OpenDocument Spreadsheet) format, typically used alongside pyexcel for spreadsheet operations.
Yes, if you need ODS file support in Python and are comfortable with a library on a stable maintenance cadence (active but not rapidly evolving). The permissive license and low install friction make it a straightforward choice. Be aware that the latest release was in 2022 and fonts/colors/charts are not supported; verify compatibility with your Python version and ODS feature requirements before committing.
Install
pyexcel-ods3 on PyPI
pip
pip install pyexcel-ods3uv
uv add pyexcel-ods3poetry
poetry add pyexcel-ods3Installing pyexcel-ods3
Before you install
Low install friction with three runtime dependencies (pyexcel-io, lxml, pyexcel-ezodf). Maintenance is active with recent commits, though the latest release was in 2022.
License in practice
Licensed under New BSD (permissive), allowing use in commercial and proprietary projects with minimal restrictions.
Quickstart
pip install pyexcel-ods3
from pyexcel_ods3 import get_data, save_data
from collections import OrderedDict
data = OrderedDict()
data.update({"Sheet 1": [[1, 2, 3], [4, 5, 6]]})
save_data("file.ods", data)
read_data = get_data("file.ods")
Verify before relying
- Whether fonts, colors, and charts can be preserved or manipulated despite the documented constraint.
- Current compatibility with Python versions beyond 3.8, given the latest release was 2022-01-30.
- Performance characteristics when handling large ODS files, given the pagination note about reading the whole file first.
Package facts
| License | New BSD (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — pyexcel-io, lxml, pyexcel-ezodf |
| Maintenance | actively maintained — 1,657 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 95,030/month — #13,294 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyexcel_ods3-0.6.1-py3-none-any.whl
Keywords: python, ods
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
pyexcel-xlsReads, manipulates, and writes data in xls…
permissive · top 5,000 on PyPI
pyexcel-xlsxReads, manipulates, and writes xlsx and xlsm…
permissive · top 5,000 on PyPI
pyexcel-webioProvides a unified interface library for…
permissive · top 15,000 on PyPI
pyexcel-ioProvides a unified API to read and write data…
permissive · top 5,000 on PyPI
pyexcelProvides a single API to read, write, and…
permissive · top 5,000 on PyPI
pyexcel-ezodfCreate, open, and modify OpenDocument Format…
permissive · top 15,000 on PyPI
odfdoodfdo is a Python library for creating,…
permissive · top 15,000 on PyPI
ezodfezodf creates, opens, and modifies OpenDocument…
permissive · top 15,000 on PyPI
pyorcPyORC reads and writes Apache ORC files using…
permissive · top 15,000 on PyPI
onyx-devtoolsA command-line utility that provides developer…
permissive · top 15,000 on PyPI