Pretty tables in the terminal
Project description
The tables have termed.
termtables is a lightweight Python 3 package for pretty-printing tables on the command line. Install with
pip install termtables
The code
import termtables as tt
import numpy
numpy.random.seed(0)
data = numpy.random.rand(5, 2)
tt.print(data)
# tt.to_string(data) returns the string
produces
You can control border style, padding, alignment, and various other attributes. For example,
import termtables as tt
header = ["a", "bb", "ccc"]
data = [
[1, 2, 3], [613.23236243236, 613.23236243236, 613.23236243236]
]
tt.print(
data,
header=header,
style=tt.styles.markdown,
padding=(0, 1),
alignment="lcr"
)
produces
| a | bb | ccc |
|-----------------|-----------------|-----------------|
| 1 | 2 | 3 |
| 613.23236243236 | 613.23236243236 | 613.23236243236 |
which is useful for copy-pasting into websites that support Markdown (like GitHub).
See
test/test_termtables.py
for more examples.
If the styles in termtables.styles
thin
thin_thick
thin_double
rounded
rounded_thick
rounded_double
thick
thick_thin
double
double_thin
booktabs
ascii_thin
ascii_thin_double
ascii_double
ascii_double_thin
ascii_booktabs
markdown
aren't good enough for you, simply provide your own style as a string of length 11 or 15 (the extra 4 including header-separating characters). For example
import termtables as tt
header = ["a", "bb", "ccc"]
data = [
[1, 2, 3], [613.23236243236, 613.23236243236, 613.23236243236]
]
tt.print(
data,
header=header,
style="x0123456789abcd"
)
produces
1xxxxxxxxxxxxxxxxx7xxxxxxxxxxxxxxxxx7xxxxxxxxxxxxxxxxx2
0 a 0 bb 0 ccc 0
abbbbbbbbbbbbbbbbbcbbbbbbbbbbbbbbbbbcbbbbbbbbbbbbbbbbbd
0 1 0 2 0 3 0
5xxxxxxxxxxxxxxxxx9xxxxxxxxxxxxxxxxx9xxxxxxxxxxxxxxxxx6
0 613.23236243236 0 613.23236243236 0 613.23236243236 0
3xxxxxxxxxxxxxxxxx8xxxxxxxxxxxxxxxxx8xxxxxxxxxxxxxxxxx4
Testing
To run the termtables unit tests, check out this repository and type
tox
License
This software is published under the GPL-3.0 license.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for termtables-0.2.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5f422dd1c6aeb864b8b17cbab0847dd3c622365d2c7b4078cc2dfd8e9ec54f2 |
|
MD5 | cd5bf29cc1947e8aa10bc77a2ca19de9 |
|
BLAKE2b-256 | a6198a274482b1e3e74728bf932140dad8e5ff0e7b1217bd0c8f737bafaa8da7 |