Skip to main content

Create pretty tables from headers and rows, perfect for console output.

Project description

Pretty Tables

Create pretty tables from headers and rows, perfect for console output.

Build Status Coverage Status PyPi Licence

Showcase

Pretty Tables will create uniformly dispersed columns based on the input given and can be scaled to your needs in length of the table or number of columns. The input is automatically validated and allows for custom formatting making generating Pretty Tables a breeze.

Install

# Install package
pip3 install pretty-tables

# Install locally
just install

Usage

Pretty Tables is simple to use. Create a table by calling pretty_tables.create(), pass a list of headers and a 2 dimensional list of rows (each row must match the length of the headers). Pass an optional empty_cell_placeholder string, colors list, or a truthy index to customize your Pretty Table.

Pretty Tables will automatically validate the input and convert each item to a string before returning successfully; however, you can pass Pretty Tables any data type within the header or row lists. In the following example, we are using integers, booleans, None, and strings:

import pretty_tables

headers = ['ID', 'Name', 'Occupation', 'Employed']
rows = [
    [1, 'Justin', 'Software Engineer', True],
    [2, 'Misty', 'Receptionist', False],
    [3, 'John', None, False],
]

# Add optional custom colors to each column
colors = [
    pretty_tables.Colors.red,
    pretty_tables.Colors.green,
    pretty_tables.Colors.blue,
    pretty_tables.Colors.purple,
]

# Generate the pretty table output
table = pretty_tables.create(
    headers=headers,
    rows=rows,
    empty_cell_placeholder='No data',  # Optional: override the default `None` with a custom string
    colors=colors,  # Optional: mutually exclusive with `truthy`
    # truthy=3,  # Optional: integer of the column you want to check for truthy values on, mutually exclusive with `colors`
)

print(table)

Colors

You can also color each column differently by using the colors argument and passing a list of colors from the pretty_tables.Colors class. The input list must match the length of the headers list.

  • black
  • blue
  • cyan
  • green
  • purple
  • red
  • white
  • yellow
  • bold
  • reset (resets all text formatting)
  • underline
  • none (acts like reset, used instead of passing None as a color)

Development

# Get a comprehensive list of development tools
just --list

Attribution

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

pretty_tables-4.0.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pretty_tables-4.0.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file pretty_tables-4.0.0.tar.gz.

File metadata

  • Download URL: pretty_tables-4.0.0.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pretty_tables-4.0.0.tar.gz
Algorithm Hash digest
SHA256 0b3432415623176e5f182fc01b2063dce40215f37fdf1aee4052e5a96d40b791
MD5 971f61d33afc3a58818e151c3ce23f57
BLAKE2b-256 525b98c2838605056aeeb25d841715e17d2b2d5da12b6aa0b0aed4cbaaa5cfed

See more details on using hashes here.

File details

Details for the file pretty_tables-4.0.0-py3-none-any.whl.

File metadata

  • Download URL: pretty_tables-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pretty_tables-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ea1b930622c43b55f6d44c1a34d1946a6ba75a423724cfb714d9433e6e42fd4
MD5 19c610caef0a6bcc5592d2050bd427d4
BLAKE2b-256 5b3b043ba468a0bc8fa99677ef8f477a7d305c5984d304274bde7bdb4c2e9ccb

See more details on using hashes here.

Supported by

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