pytablewriter is a python library to write a table in various formats: CSV/HTML/JavaScript/JSON/Markdown/MediaWiki/Excel/Pandas/Python/reStructuredText
Project description
pytablewriter
Summary
pytablewriter is a python library to write a table in various formats: CSV/HTML/JavaScript/JSON/Markdown/MediaWiki/Excel/Pandas/Python/reStructuredText
Features
- Write a table in various formats:
CSV
- Microsoft Excel TM
.xlsx format
.xls format
HTML
JavaScript (Definition of a nested list variable)
JSON
Markdown
MediaWiki
Pandas (Definition of a DataFrame variable)
Python code (Definition of a nested list variable)
- reStructuredText
Grid tables
Simple tables
CSV table
- Automatic tabular data formatting
Alignment
Padding
Decimal places of numbers
Output table to a stream such as a file or the standard output
Examples
Write a Markdown table
import pytablewriter
writer = pytablewriter.MarkdownTableWriter()
writer.table_name = "example_table"
writer.header_list = ["int", "float", "str", "bool", "mix", "time"]
writer.value_matrix = [
[0, 0.1, "hoge", True, 0, "2017-01-01 03:04:05+0900"],
[2, "-2.23", "foo", False, None, "2017-12-23 45:01:23+0900"],
[3, 0, "bar", "true", "inf", "2017-03-03 33:44:55+0900"],
[-10, -9.9, "", "FALSE", "nan", "2017-01-01 00:00:00+0900"],
]
writer.write_table()
# example_table
int|float|str |bool |mix| time
--:|----:|----|-----|--:|------------------------
0| 0.1|hoge|True | 0|2017-01-01 03:04:05+0900
2| -2.2|foo |False| |2017-12-23 12:34:51+0900
3| 0.0|bar |True |inf|2017-03-03 22:44:55+0900
-10| -9.9| |False|nan|2017-01-01 00:00:00+0900
Rendering result
Write a reStructuredText table (grid tables)
import pytablewriter
writer = pytablewriter.RstGridTableWriter()
writer.table_name = "example_table"
writer.header_list = ["int", "float", "str", "bool", "mix", "time"]
writer.value_matrix = [
[0, 0.1, "hoge", True, 0, "2017-01-01 03:04:05+0900"],
[2, "-2.23", "foo", False, None, "2017-12-23 45:01:23+0900"],
[3, 0, "bar", "true", "inf", "2017-03-03 33:44:55+0900"],
[-10, -9.9, "", "FALSE", "nan", "2017-01-01 00:00:00+0900"],
]
writer.write_table()
.. table:: example_table
+---+-----+----+-----+---+------------------------+
|int|float|str |bool |mix| time |
+===+=====+====+=====+===+========================+
| 0| 0.1|hoge|True | 0|2017-01-01 03:04:05+0900|
+---+-----+----+-----+---+------------------------+
| 2| -2.2|foo |False| |2017-12-23 12:34:51+0900|
+---+-----+----+-----+---+------------------------+
| 3| 0.0|bar |True |inf|2017-03-03 22:44:55+0900|
+---+-----+----+-----+---+------------------------+
|-10| -9.9| |False|nan|2017-01-01 00:00:00+0900|
+---+-----+----+-----+---+------------------------+
Rendering result
int |
float |
str |
bool |
mix |
time |
---|---|---|---|---|---|
0 |
0.1 |
hoge |
True |
0 |
2017-01-01 03:04:05+0900 |
2 |
-2.2 |
foo |
False |
2017-12-23 12:34:51+0900 |
|
3 |
0.0 |
bar |
True |
inf |
2017-03-03 22:44:55+0900 |
-10 |
-9.9 |
False |
nan |
2017-01-01 00:00:00+0900 |
Write a JavaScript table (variable definition of nested list)
import pytablewriter
writer = pytablewriter.JavaScriptTableWriter()
writer.table_name = "example_table"
writer.header_list = ["int", "float", "str", "bool", "mix", "time"]
writer.value_matrix = [
[0, 0.1, "hoge", True, 0, "2017-01-01 03:04:05+0900"],
[2, "-2.23", "foo", False, None, "2017-12-23 45:01:23+0900"],
[3, 0, "bar", "true", "inf", "2017-03-03 33:44:55+0900"],
[-10, -9.9, "", "FALSE", "nan", "2017-01-01 00:00:00+0900"],
]
writer.write_table()
var example_table = [
["int", "float", "str", "bool", "mix", "time"],
[0, 0.1, "hoge", true, 0, new Date("2017-01-01T03:04:05+0900")],
[2, -2.2, "foo", false, null, new Date("2017-12-23T12:34:51+0900")],
[3, 0.0, "bar", true, Infinity, new Date("2017-03-03T22:44:55+0900")],
[-10, -9.9, "", false, NaN, new Date("2017-01-01T00:00:00+0900")]
];
Write an Excel table
import pytablewriter
writer = pytablewriter.ExcelXlsxTableWriter()
writer.open_workbook("sample.xlsx")
writer.make_worksheet("example")
writer.header_list = ["int", "float", "str", "bool", "mix", "time"]
writer.value_matrix = [
[0, 0.1, "hoge", True, 0, "2017-01-01 03:04:05+0900"],
[2, "-2.23", "foo", False, None, "2017-12-23 12:34:51+0900"],
[3, 0, "bar", "true", "inf", "2017-03-03 22:44:55+0900"],
[-10, -9.9, "", "FALSE", "nan", "2017-01-01 00:00:00+0900"],
]
writer.write_table()
writer.close()
Output of Excel book
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
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file pytablewriter-0.12.1.tar.gz
.
File metadata
- Download URL: pytablewriter-0.12.1.tar.gz
- Upload date:
- Size: 49.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c139214d6046e8a15ef833ee637c65acdc19c2a02e1667424cb7f8959ce75be |
|
MD5 | 3f00a4eb45d76de5b652d605c106021c |
|
BLAKE2b-256 | 1ff0e8c45acb06c2fc53ab7db8cbe0641246c5431ae7b5c5a2454d68c7777e23 |
File details
Details for the file pytablewriter-0.12.1-py2.py3-none-any.whl
.
File metadata
- Download URL: pytablewriter-0.12.1-py2.py3-none-any.whl
- Upload date:
- Size: 30.1 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 631705f48d1378e977aec786da2db030dcd1fda305c5445fd6ee73ba5596cf2d |
|
MD5 | 9d477b99df32cc0d5f191170ceb9b5ef |
|
BLAKE2b-256 | 85ad6b7ddb3a41c1007c38edfced7f7b61e0767b975660d9f9a3b3ebab397480 |