Skip to main content

pytablewriter is a python library to write a table in various formats: CSV/HTML/JavaScript/JSON/Markdown/Excel/Pandas/Python/reStructuredText

Project description

pytablewriter

https://img.shields.io/pypi/pyversions/pytablewriter.svg https://travis-ci.org/thombashi/pytablewriter.svg?branch=master https://ci.appveyor.com/api/projects/status/2w0611ajvw21vho5?svg=true https://coveralls.io/repos/github/thombashi/pytablewriter/badge.svg?branch=master

Summary

pytablewriter is a python library to write a table in various formats: CSV/HTML/JavaScript/JSON/Markdown/Excel/Pandas/Python/reStructuredText

Features

  • Write a table in various formats:
    • CSV

    • Microsoft Excel TM

    • HTML

    • JavaScript (Definition of a nested list variable)

    • JSON

    • Markdown

    • Pandas (Definition of a DataFrame variable)

    • Python code (Definition of a nested list variable)

    • reStructuredText
      • Grid tables

      • Simple tables

      • CSV table

  • Automatic value formatting
    • Alignment

    • Padding

    • Decimal places of numbers

  • Output to a stream such as a file or the standard output

Examples

Write a Markdown table

import pytablewriter

writer = pytablewriter.MarkdownTableWriter()
writer.table_name = "zone"
writer.header_list = ["zone_id", "country_code", "zone_name"]
writer.value_matrix = [
    ["1", "AD", "Europe/Andorra"],
    ["2", "AE", "Asia/Dubai"],
    ["3", "AF", "Asia/Kabul"],
    ["4", "AG", "America/Antigua"],
    ["5", "AI", "America/Anguilla"],
]

writer.write_table()
# zone
zone_id|country_code|   zone_name
------:|------------|----------------
      1|AD          |Europe/Andorra
      2|AE          |Asia/Dubai
      3|AF          |Asia/Kabul
      4|AG          |America/Antigua
      5|AI          |America/Anguilla

Rendering result

markdown_ss

Rendered markdown at GitHub

Write a reStructuredText table (grid tables)

import pytablewriter

writer = pytablewriter.RstGridTableWriter()
writer.table_name = "zone"
writer.header_list = ["zone_id", "country_code", "zone_name"]
writer.value_matrix = [
    ["1", "AD", "Europe/Andorra"],
    ["2", "AE", "Asia/Dubai"],
    ["3", "AF", "Asia/Kabul"],
    ["4", "AG", "America/Antigua"],
    ["5", "AI", "America/Anguilla"],
]

writer.write_table()
.. table:: zone

    +-------+------------+----------------+
    |zone_id|country_code|   zone_name    |
    +=======+============+================+
    |      1|AD          |Europe/Andorra  |
    +-------+------------+----------------+
    |      2|AE          |Asia/Dubai      |
    +-------+------------+----------------+
    |      3|AF          |Asia/Kabul      |
    +-------+------------+----------------+
    |      4|AG          |America/Antigua |
    +-------+------------+----------------+
    |      5|AI          |America/Anguilla|
    +-------+------------+----------------+

Rendering result

zone

zone_id

country_code

zone_name

1

AD

Europe/Andorra

2

AE

Asia/Dubai

3

AF

Asia/Kabul

4

AG

America/Antigua

5

AI

America/Anguilla

Write a JavaScript table (variable definition of nested list)

import pytablewriter

writer = pytablewriter.JavaScriptTableWriter()
writer.table_name = "zone"
writer.header_list = ["zone_id", "country_code", "zone_name"]
writer.value_matrix = [
    ["1", "AD", "Europe/Andorra"],
    ["2", "AE", "Asia/Dubai"],
    ["3", "AF", "Asia/Kabul"],
    ["4", "AG", "America/Antigua"],
    ["5", "AI", "America/Anguilla"],
]

writer.write_table()
var zone = [
    ["zone_id", "country_code", "zone_name"],
    [1, "AD", "Europe/Andorra"],
    [2, "AE", "Asia/Dubai"],
    [3, "AF", "Asia/Kabul"],
    [4, "AG", "America/Antigua"],
    [5, "AI", "America/Anguilla"]
];

Write an Excel table

import pytablewriter

writer = pytablewriter.ExcelTableWriter()
writer.open_workbook("sample_single.xlsx")

writer.make_worksheet("zone")
writer.header_list = ["zone_id", "country_code", "zone_name"]
writer.value_matrix = [
    ["1", "AD", "Europe/Andorra"],
    ["2", "AE", "Asia/Dubai"],
    ["3", "AF", "Asia/Kabul"],
    ["4", "AG", "America/Antigua"],
    ["5", "AI", "America/Anguilla"],
]
writer.write_table()

writer.close()

Output

excel_single

Output excel file (sample_single.xlsx)

For more information

More examples are available at http://pytablewriter.readthedocs.org/en/latest/pages/examples/index.html

Installation

pip install pytablewriter

Dependencies

Python 2.7+ or 3.3+

Test dependencies

Documentation

http://pytablewriter.readthedocs.org/en/latest/

Project details


Release history Release notifications | RSS feed

This version

0.2.0

Download files

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

Source Distribution

pytablewriter-0.2.0.tar.gz (35.5 kB view details)

Uploaded Source

Built Distribution

pytablewriter-0.2.0-py2.py3-none-any.whl (20.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pytablewriter-0.2.0.tar.gz.

File metadata

File hashes

Hashes for pytablewriter-0.2.0.tar.gz
Algorithm Hash digest
SHA256 9e8b02f4bd73250ad8e01c414fa1d2f67157f5e2eba84b7c31ca4a20fb5eb2ac
MD5 ae5050a62fcb8637fdfe398e971e0136
BLAKE2b-256 3357ba11513c0a3e38b039502db32bd7ba073d7207f3121d2a6ea9607f7d4233

See more details on using hashes here.

File details

Details for the file pytablewriter-0.2.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pytablewriter-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9fdb2f80af22948aef929dda0588b3caeb999cdb1950e11a3d613f42f02739db
MD5 19a260f2e4867e84e8e358f75884598c
BLAKE2b-256 ae1c7bc3231ba560e20c9a2be11cb54c4ad17d7c3d7175a64b8ada3ef78ced2a

See more details on using hashes here.

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