terminaltables

Generate simple tables in terminals from a nested list of strings.

Github stars Tracking Chart

==============
terminaltables

Easily draw tables in terminal/console applications from a list of lists of strings. Supports multi-line rows.

  • Python 2.6, 2.7, PyPy, PyPy3, 3.3, 3.4, and 3.5 supported on Linux and OS X.
  • Python 2.7, 3.3, 3.4, and 3.5 supported on Windows (both 32 and 64 bit versions of Python).

? Full documentation: https://robpol86.github.io/terminaltables

.. image:: https://img.shields.io/appveyor/ci/Robpol86/terminaltables/master.svg?style=flat-square&label=AppVeyor%20CI
:target: https://ci.appveyor.com/project/Robpol86/terminaltables
:alt: Build Status Windows

.. image:: https://img.shields.io/travis/Robpol86/terminaltables/master.svg?style=flat-square&label=Travis%20CI
:target: https://travis-ci.org/Robpol86/terminaltables
:alt: Build Status

.. image:: https://img.shields.io/codecov/c/github/Robpol86/terminaltables/master.svg?style=flat-square&label=Codecov
:target: https://codecov.io/gh/Robpol86/terminaltables
:alt: Coverage Status

.. image:: https://img.shields.io/pypi/v/terminaltables.svg?style=flat-square&label=Latest
:target: https://pypi.python.org/pypi/terminaltables
:alt: Latest Version

Quickstart

Install:

.. code:: bash

pip install terminaltables

Usage:

.. code::

from terminaltables import AsciiTable
table_data = [
    ['Heading1', 'Heading2'],
    ['row1 column1', 'row1 column2'],
    ['row2 column1', 'row2 column2'],
    ['row3 column1', 'row3 column2']
]
table = AsciiTable(table_data)
print table.table
+--------------+--------------+, Heading1, Heading2, +--------------+--------------+, row1 column1, row1 column2, row2 column1, row2 column2, row3 column1, row3 column2, +--------------+--------------+

Example Implementations

.. image:: docs/examples.png?raw=true
:alt: Example Scripts Screenshot

Source code for examples: example1.py <https://github.com/Robpol86/terminaltables/blob/master/example1.py>,
example2.py <https://github.com/Robpol86/terminaltables/blob/master/example2.py>
, and
example3.py <https://github.com/Robpol86/terminaltables/blob/master/example3.py>_

.. changelog-section-start

Changelog

This project adheres to Semantic Versioning <http://semver.org/>_.

3.1.0 - 2016-10-16

Added
* git --porcelain-like table by liiight: https://github.com/Robpol86/terminaltables/pull/31

3.0.0 - 2016-05-30

Added
* Support for https://pypi.python.org/pypi/colorama
* Support for https://pypi.python.org/pypi/termcolor
* Support for RTL characters (Arabic and Hebrew).
* Support for non-string items in table_data like integers.

Changed
* Refactored again, but this time entire project including tests.

Removed
* padded_table_data property and join_row(). Moving away from repeated string joining/splitting.

Fixed
* set_terminal_title() Unicode handling on Windows.
* https://github.com/Robpol86/terminaltables/issues/18
* https://github.com/Robpol86/terminaltables/issues/20
* https://github.com/Robpol86/terminaltables/issues/23
* https://github.com/Robpol86/terminaltables/issues/26

2.1.0 - 2015-11-02

Added
* GitHub Flavored Markdown table by bcho: https://github.com/Robpol86/terminaltables/pull/12
* Python 3.5 support (Linux/OS X and Windows).

2.0.0 - 2015-10-11

Changed
* Refactored code. No new features.
* Breaking changes: UnixTable/WindowsTable/WindowsTableDouble moved. Use SingleTable/DoubleTable
instead.

1.2.1 - 2015-09-03

Fixed
* CJK character width fixed by zqqf16 and bcho: https://github.com/Robpol86/terminaltables/pull/9

1.2.0 - 2015-05-31

Added
* Bottom row separator.

1.1.1 - 2014-11-03

Fixed
* Python 2.7 64-bit terminal width bug on Windows.

1.1.0 - 2014-11-02

Added
* Windows support.
* Double-lined table.

1.0.2 - 2014-09-18

Added
* table_width and ok properties.

1.0.1 - 2014-09-12

Added
* Terminal width/height defaults for testing.
* terminaltables.DEFAULT_TERMINAL_WIDTH
* terminaltables.DEFAULT_TERMINAL_HEIGHT

1.0.0 - 2014-09-11

  • Initial release.

.. changelog-section-end

Main metrics

Overview
Name With OwnerRobpol86/terminaltables
Primary LanguagePython
Program languagePython (Language Count: 1)
Platform
License:MIT License
所有者活动
Created At2014-09-02 04:02:49
Pushed At2021-12-07 05:09:46
Last Commit At2021-12-06 21:09:46
Release Count11
Last Release Namev3.1.0 (Posted on )
First Release Namev1.0.0 (Posted on )
用户参与
Stargazers Count687
Watchers Count22
Fork Count74
Commits Count138
Has Issues Enabled
Issues Count46
Issue Open Count28
Pull Requests Count8
Pull Requests Open Count11
Pull Requests Close Count6
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private