terminaltables
Easily draw tables in terminal/console applications from a list of lists of strings. Supports multi-line rows.
- Python 2.6, 2.7, PyPy, PyPy3, 3.3, 3.4, and 3.5 supported on Linux and OS X.
- Python 2.7, 3.3, 3.4, and 3.5 supported on Windows (both 32 and 64 bit versions of Python).
Quickstart
Install:
pip install terminaltablesUsage:
from terminaltables import AsciiTable
table_data = [
['Heading1', 'Heading2'],
['row1 column1', 'row1 column2'],
['row2 column1', 'row2 column2'],
['row3 column1', 'row3 column2']
]
table = AsciiTable(table_data)
print table.table
+--------------+--------------+
| Heading1 | Heading2 |
+--------------+--------------+
| row1 column1 | row1 column2 |
| row2 column1 | row2 column2 |
| row3 column1 | row3 column2 |
+--------------+--------------+
Example Implementations
Source code for examples: example1.py, example2.py, and example3.py
Changelog
This project adheres to Semantic Versioning.
3.1.0 - 2016-10-16
- Added
git --porcelain-like table by liiight: https://github.com/Robpol86/terminaltables/pull/31
3.0.0 - 2016-05-30
- Added
- Support for https://pypi.python.org/pypi/colorama
- Support for https://pypi.python.org/pypi/termcolor
- Support for RTL characters (Arabic and Hebrew).
- Support for non-string items in
table_datalike integers.
- Changed
- Refactored again, but this time entire project including tests.
- Removed
padded_table_dataproperty andjoin_row(). Moving away from repeated string joining/splitting.
- Fixed
set_terminal_title()Unicode handling on Windows.- https://github.com/Robpol86/terminaltables/issues/18
- https://github.com/Robpol86/terminaltables/issues/20
- https://github.com/Robpol86/terminaltables/issues/23
- https://github.com/Robpol86/terminaltables/issues/26
2.1.0 - 2015-11-02
- Added
- GitHub Flavored Markdown table by bcho: https://github.com/Robpol86/terminaltables/pull/12
- Python 3.5 support (Linux/OS X and Windows).
2.0.0 - 2015-10-11
- Changed
- Refactored code. No new features.
- Breaking changes:
UnixTable/WindowsTable/WindowsTableDoublemoved. UseSingleTable/DoubleTableinstead.
1.2.1 - 2015-09-03
- Fixed
- CJK character width fixed by zqqf16 and bcho: https://github.com/Robpol86/terminaltables/pull/9
1.2.0 - 2015-05-31
- Added
- Bottom row separator.
1.1.1 - 2014-11-03
- Fixed
- Python 2.7 64-bit terminal width bug on Windows.
1.1.0 - 2014-11-02
- Added
- Windows support.
- Double-lined table.
1.0.2 - 2014-09-18
- Added
table_widthandokproperties.
1.0.1 - 2014-09-12
- Added
- Terminal width/height defaults for testing.
terminaltables.DEFAULT_TERMINAL_WIDTHterminaltables.DEFAULT_TERMINAL_HEIGHT
1.0.0 - 2014-09-11
- Initial release.
