Welcome to pyspread
pyspread is a non-traditional spreadsheet application that is based on and written in the programming language Python.
The goal of pyspread is to be the most pythonic spreadsheet.
pyspread expects Python expressions in its grid cells, which makes a spreadsheet specific language obsolete. Each cell returns a
Python object that can be accessed from other cells. These objects can represent anything including lists or matrices.
pyspread is free software. It is released under the GPL v3 licence.
The latest release is pyspread v2.1 (source code). It requires Python 3.6+.
The last (outdated) release that is compatible with Python 2.x is pyspread v1.1.3.

Features
- Cells accept Python code and return Python objects
- Access to Python modules from within cells including e.g. NumPy
- Imports CSV, SVG
- Exports CSV, SVG, PDF*
- Cells may display text, markup, images, dates** or charts**
- Spell checker**
- git-able pysu save file format
- blake2b based save file signatures that prevent foreign code execution
Notes: * PDF export via print to file, ** requires optional dependencies
Target User Group
Directly using Python code in a grid is a core feature of pyspread. The target user group has
experience with or wants to learn the programming language Python:
- Clara is a research engineer. She systematically compares results of different parameter sets.
She is proficient with Python and has used it for her scientific analyses. Clara wants a quick initial overview
of how changing specific parameters affects her results. With pyspread, Clara is displaying each result in one cell.
This allows her to quickly figure out, which parameters she is going to focus on next.
- Peter is using spreadsheets to prepare business decisions. He is worried about algorithmic errors and calculation
inaccuracies is his complicated tables. Peter is importing business data via CSV files into pyspread.
He is importing the Money datatype from py-moneyed
in the Macro panel. Using it for money values helps him avoid floating point errors.
Furthermore, he has implemented his analysis tools together with unit tests in a separate Python module,
which he is importing as well. Therefore, Peter is worrying less about wrong results
that may lead to bad business decisions.
Not part of the target user group are Donna and Jack:
- Donna is looking for a free replacement for Ms. Excel. She does not know any programming language.
- Jack does computation intensive data analysis that may take hours to compute. He is looking for a visually interactive data mining tool.
This does not mean that Donna or Jack cannot work with pyspread. However, Donna might find the learning
curve for using Python code in cells too steep. Jack on the other hand might be disappointed because his
long running tasks are likely to lock up pyspread.
For user questions or user feedback please use the
pyspread community board
on gitter.
For contributions, patches, development discussions and ideas please create an issue using the pyspread issue tracker