Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Tabular Print

Tabular print prints a table that scales column widths to fit the data. Written to mesh with the sqlite3 python module, specifically cursor.description (list comp-ed to only have the column labels), and cursor.fetchall(). Each row in the values list is treated as a row of table data, and element order in the list corresponds to the order of column labels. Use the ‘transpose’ argument if you data is formated with each row representing a column of data.

Example

A redacted example from a side project of mine (https://github.com/mkitzan/terminus):

*--------------------------------------*---------------*----------------*-----*------*--------*
|Title                                 |Author         |Genre           |Year |Pages |Type    |
*--------------------------------------*---------------*----------------*-----*------*--------*
|Ellison Wonderland                    |Harlan Ellison |science fiction |1962 |191   |stories |
|Dangerous Visions                     |Harlan Ellison |science fiction |1967 |598   |stories |
|Love Ain't Nothing but Sex Misspelled |Harlan Ellison |science fiction |1968 |380   |stories |
|Again, Dangerous Visions vol.1        |Harlan Ellison |science fiction |1972 |450   |stories |
|Again, Dangerous Visions vol.2        |Harlan Ellison |science fiction |1972 |449   |stories |
|Approaching Oblivion                  |Harlan Ellison |science fiction |1974 |164   |stories |
|Deathbird Stories                     |Harlan Ellison |science fiction |1975 |347   |stories |
|Stalking the Nightmare                |Harlan Ellison |science fiction |1982 |301   |stories |
|Angry Candy                           |Harlan Ellison |science fiction |1988 |324   |stories |
|Slippage                              |Harlan Ellison |science fiction |1997 |359   |stories |
*--------------------------------------*---------------*----------------*-----*------*--------*

Usage

First import the function ‘table’ from tabular print

from tabularprint import table

For a standard table use

table(col_labels, values)

For an augmented table use the expected arguments, and any combination of the five non-standard arguments

table(col_labels, values, header="Look at this table", transpose=True, edge="#", padding=2, printer=lambda row: outfile.write(row + "\n"))

Non-Standard Arguments

  • header (default None): will print whatever this string is above the table.

  • transpose (default False): will transpose the values argument if transpose=True. Helpful if a row in values corresponds to a column in the table rather than the expected values row corresponds to a table row (format of a sqlite3 fetchall call)

  • edge (default “*”): when a horizontal line (“-”) intersects a vertical line (”|”) in the table, an edge character is placed. By default a star is used, but, by including an argument for edge when table is called, you can augment what this character is.

  • padding (default 1): buffer determines the amount of whitespace between the end of the longest value in a column and that column’s right vertical divider. Example: |example of buffer=1 |

  • printer (default print): allows user to write the output of tabular-print to a file, or call some function with each line of tabular-print’s output as an argument. Each line of output is a string, so be sure your function takes that into account.

Metadata

Release files for tabular-print 1.0.7a1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tabular-print 1.0.7a1
File Size Uploaded Provenance
tabular-print-1.0.7a1.tar.gz 3.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for tabular-print 1.0.7a1
File Interpreter ABI Platform
tabular_print-1.0.7a1-py3-none-any.whl Python 3 none any Details

Total release size: 12.6 kB

Release files / tabular-print-1.0.7a1.tar.gz

Download URL tabular-print-1.0.7a1.tar.gz
Size 3.7 kB
Tags Source
SHA-256 checksum
How to use checksums
110e0c3da533b226ffc9ffdda05ba311a8be851f2c62adeddb212e5017ea3517
BLAKE2b-256 checksum
How to use checksums
c4da41d3d810413de140d4191f9d5edcfefd6b5ce376bce7dfde4a54e170992c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / tabular_print-1.0.7a1-py3-none-any.whl

Download URL tabular_print-1.0.7a1-py3-none-any.whl
Size 8.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
07dbfe5bbcda6813bb82e7aaf56bada292b906365ee094bf10f399d1ad1fbf3d
BLAKE2b-256 checksum
How to use checksums
50d34dc27517feb80e9830c84ed8e7fe3e2c1f2d7c6d01f0d7acee4ecaa118ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for tabular-print 1.0.7a1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page