Skip to main content

Print python collections as tables

Project description

tprint

Print python collections as tables

Code Style: black Checked with mypy PyPI - Python Version PyPI - License PyPI

Example

from tprint import tprint

data = {
    "a": (100, 2, 3, 4),
    "b": (1, 200, 3, 4),
    "c": (1, 2, 300, 4),
    "d": (1, 2, 3, 400),
}

# as rows
tprint(data)
"""
0 | 1   | 2   | 3   | 4  
--+-----+-----+-----+----
a | 100 | 2   | 3   | 4  
b | 1   | 200 | 3   | 4  
c | 1   | 2   | 300 | 4  
d | 1   | 2   | 3   | 400
"""

# as columns
tprint(data, as_columns=True)
"""
a   | b   | c   | d  
----+-----+-----+----
100 | 1   | 1   | 1  
2   | 200 | 2   | 2  
3   | 3   | 300 | 3  
4   | 4   | 4   | 400
"""

Docs

tprint

This is effectivly just the following snippet:

def tprint(*args, **kwargs):
    print(tformat(*args, **kwargs))

tformat

def tformat(
    data: Union[Dict[str, Sequence], Sequence],
    *,
    as_columns: bool = False,
    headers: Optional[Sequence[str]] = None,
    alignments: Optional[str] = None,
    formattings: Optional[str] = None,
) -> str:
    """
    Format a dictionary or list as a table.
    
    :param data: table data
    :param as_columns: interpret given data as collection of columns
                       instead of as rows
    :param headers: sequence of column headers
                    (Defaults to enumerating the columns if headers
                     can't be extracted from data)
    :param alignments: string with alignments per column
                       (Defaults to left alignment for all columns
                        or those skipped with spaces)
    :param formattings: string with formattings per column
                        (Defaults to string casting for all columns
                         or those skipped with spaces)
    """
    ...

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tprint-1.0.1.tar.gz (3.1 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page