Metadata-Version: 1.1
Name: table-logger
Version: 0.1
Summary: TableLogger is a handy Python utility for logging tabular data into a console or a file.
Home-page: https://github.com/AleksTk/table-logger
Author: Alexander Tkachenko
Author-email: alex.tk.fb@gmail.com
License: GNU GPL 2.0
Download-URL: https://github.com/AleksTk/table-logger/tarball/v0.1
Description: TableLogger
        ============
        TableLogger is a handy Python utility for logging tabular data into a console or a text file.
        
        
        Usage
        -----
        ```python
        from table_logger import TableLogger
        tpr = TableLogger(columns=['a', 'b', 'c', 'd'])
        
        tpr(1, 'Row1', datetime.now(), math.pi)
        tpr(2, 'Row2', datetime.now(), 1/3)
        tpr(3, 'Row3', datetime.now(), random.random())
        ```
        Output:
        ```
        +----------------------+----------------------+---------------------+----------------------+
        |                    a | b                    | c                   |                    d |
        |----------------------+----------------------+---------------------+----------------------|
        |                    1 | Row1                 | 2015-12-28 21:13:46 |    3.141592653589793 |
        |                    2 | Row2                 | 2015-12-28 21:13:46 |    0.333333333333333 |
        |                    3 | Row3                 | 2015-12-28 21:13:46 |    0.854212894923849 |
        ```
        
        
        Features
        --------
        * sane default formatting for basic python types: int, float, date and datetime
        * row number, timestamp and time delta columns
        * allows to adjust column width and format
        * python 2.7 and 3.4 support
        
        
        Installation
        ------------
        ```bash
            $ git clone https://github.com/AleksTk/table-printer
            $ cd table-printer
            $ python setup.py install
        ```
        
        More Examples
        -------------
        
        Include row number, time-delta and timestamp columns:
        ```python
        tpr = TableLogger(columns=['data'], rownum=True, time_delta=True, timestamp=True)
        for e in 'abcde':
            time.sleep(random.randint(0, 3))
            tpr(e)
        ```
        ```
        +-----------+----------------------------+-----------------+----------------------+
        |       row | timestamp                  |      time delta | data                 |
        |-----------+----------------------------+-----------------+----------------------|
        |         1 | 2016-01-01 21:40:35.956815 |     0.000000000 | a                    |
        |         2 | 2016-01-01 21:40:35.957315 |     0.000000000 | b                    |
        |         3 | 2016-01-01 21:40:37.957569 |     2.000253916 | c                    |
        |         4 | 2016-01-01 21:40:37.957569 |     0.000500202 | d                    |
        |         5 | 2016-01-01 21:40:39.958323 |     2.000253916 | e                    |
        ```
        
        Specify custom column widths and formatters:
        
        ```python 
        tpr = TableLogger(columns=['name', 'salary'],
                           column_formatters={1: '{:,.2f}'.format},
                           column_widths={0:12, 1:15})
        tpr('John Smith',  1200000.890)
        tpr('Tommy Cache',   70000.125)
        ```
        ```
        +--------------+-----------------+
        | name         |          salary |
        |--------------+-----------------|
        | John Smith   |    1,200,000.89 |
        | Tommy Cache  |       70,000.12 |
        ```
        
Keywords: tabular,structured,data,console,log
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: System :: Logging
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
