skip to navigation
skip to content

pyexcel-text 0.2.6

A plugin to pyexcel and provides the capability to present and write data in text formats

Latest Version: 0.2.7.1

It is a plugin to pyexcel and extends its capbility to present and write data in text fromats mainly through tabulate:

  • “plain”
  • “simple”
  • “grid”
  • “pipe”
  • “orgtbl”
  • “rst”
  • “mediawiki”
  • “latex”
  • “latex_booktabs”
  • “json”
  • “html”

Usage

Simple

>>> import pyexcel as pe
>>> content = [
...     ["Column 1", "Column 2", "Column 3"],
...     [1, 2, 3],
...     [4, 5, 6],
...     [7, 8, 9]
... ]
>>> sheet = pe.Sheet(content)
>>> print(sheet.simple)
pyexcel sheet:
--------  --------  --------
Column 1  Column 2  Column 3
1         2         3
4         5         6
7         8         9
--------  --------  --------
>>> sheet.name_columns_by_row(0)
>>> print(sheet.simple)
pyexcel sheet:
  Column 1    Column 2    Column 3
----------  ----------  ----------
         1           2           3
         4           5           6
         7           8           9

Grid

>>> print(sheet.grid)
pyexcel sheet:
+------------+------------+------------+
|   Column 1 |   Column 2 |   Column 3 |
+============+============+============+
|          1 |          2 |          3 |
+------------+------------+------------+
|          4 |          5 |          6 |
+------------+------------+------------+
|          7 |          8 |          9 |
+------------+------------+------------+

Mediawiki

>>> multiple_sheets = {
...      'Sheet 1':
...          [
...              [1.0, 2.0, 3.0],
...              [4.0, 5.0, 6.0],
...              [7.0, 8.0, 9.0]
...          ],
...      'Sheet 2':
...          [
...              ['X', 'Y', 'Z'],
...              [1.0, 2.0, 3.0],
...              [4.0, 5.0, 6.0]
...          ],
...      'Sheet 3':
...          [
...              ['O', 'P', 'Q'],
...              [3.0, 2.0, 1.0],
...              [4.0, 3.0, 2.0]
...          ]
...  }
>>> book = pe.Book(multiple_sheets)
>>> book.save_as("myfile.mediawiki")
>>> myfile = open("myfile.mediawiki")
>>> print(myfile.read())
Sheet 1:
{| class="wikitable" style="text-align: left;"
|+ <!-- caption -->
|-
| align="right"| 1 || align="right"| 2 || align="right"| 3
|-
| align="right"| 4 || align="right"| 5 || align="right"| 6
|-
| align="right"| 7 || align="right"| 8 || align="right"| 9
|}
Sheet 2:
{| class="wikitable" style="text-align: left;"
|+ <!-- caption -->
|-
| X   || Y   || Z
|-
| 1.0 || 2.0 || 3.0
|-
| 4.0 || 5.0 || 6.0
|}
Sheet 3:
{| class="wikitable" style="text-align: left;"
|+ <!-- caption -->
|-
| O   || P   || Q
|-
| 3.0 || 2.0 || 1.0
|-
| 4.0 || 3.0 || 2.0
|}
>>> myfile.close()

Html

>>> book.save_as("myfile.html")
>>> myfile = open("myfile.html")
>>> print(myfile.read()) # doctest: +SKIP
Sheet 1:
<table>
<tr><td style="text-align: right;">1</td><td style="text-align: right;">2</td><td style="text-align: right;">3</td></tr>
<tr><td style="text-align: right;">4</td><td style="text-align: right;">5</td><td style="text-align: right;">6</td></tr>
<tr><td style="text-align: right;">7</td><td style="text-align: right;">8</td><td style="text-align: right;">9</td></tr>
</table>
Sheet 2:
<table>
<tr><td>X  </td><td>Y  </td><td>Z  </td></tr>
<tr><td>1.0</td><td>2.0</td><td>3.0</td></tr>
<tr><td>4.0</td><td>5.0</td><td>6.0</td></tr>
</table>
Sheet 3:
<table>
<tr><td>O  </td><td>P  </td><td>Q  </td></tr>
<tr><td>3.0</td><td>2.0</td><td>1.0</td></tr>
<tr><td>4.0</td><td>3.0</td><td>2.0</td></tr>
</table>

Please note tabulate 0.7.7 gives an extra tbody tag around tr tag.

Dependencies

  • tabulate

Change log

0.2.6 - 19.06.2017

Updated:

  1. Support pyexcel v0.5.0. Plugin interface updated to Renderer
  2. removed deprecated save_as and save_to_memory functions

0.2.5 - 28.10.2016

Updated:

  1. Support pyexcel v0.4.0

0.2.4 - 28.10.2016

Added:

  1. support pyexcel v0.3.0

0.2.3 - 14.07.2016

Added:

  1. json format: serialize date and datetime

Updated:

  1. if a sheet has row_names, its json output become records(a list of dictionary) instead of a dictionary of row name vs the rest of row values.

0.2.2 - 01.06.2016

  1. quick bug fix, see issue #27

0.2.1 - 01.06.2016

  1. compactibility with pyexcel-io 0.2.0 and pyexcel 0.2.2

0.2.0 - 23.04.2016

It is a complete re-write of the whole extension.

Added

  1. html support
  2. support pyexcel 0.2.0’s generator output
  3. pypy and pypy3 in test targets
  4. support file stream and dot notation, e.g. pyexcel.Sheet.rst will return rst text representation of it.

Updated

  1. #8, write_header as an option(False) to disable header writing
  2. the json output of multiple sheet book will be sorted by its sheet names.
  3. No longer, pyexcel-text is pyexcel-io plugin but pyexcel.sources plugin.

0.1.1 - 30.01.2016

Updated

  1. #2, fix a typo in setup.py

0.1.0 - 17.01.2016

Updated

  1. support pyexcel 0.2.0

0.0.3 - 12.06.2015

Updated

  1. #1, align api interface

    with other pyexcel plugins, e.g. save_as, save_book_as

0.0.2 - 30.11.2014

Updated

  1. support pyexcel 0.0.9

0.0.` - 20.11.2014

Initial release

 
File Type Py Version Uploaded on Size
pyexcel-text-0.2.6.tar.gz (md5) Source 2017-06-19 5KB
pyexcel_text-0.2.6-py2-none-any.whl (md5) Python Wheel 2.7 2017-06-19 7KB