Metadata-Version: 2.0
Name: duration
Version: 1.0.0
Summary: python time duration conversion module
Home-page: https://github.com/paramono/duration
Author: Alexander Paramonov
Author-email: alex@paramono.com
License: BSD License
Platform: UNKNOWN
Classifier: Environment :: Console
Classifier: Environment :: Plugins
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4

========
duration
========

python time duration conversion module

Installation
------------

::

    pip install duration


Usage
-----

Examples below show how to convert timestamps in ``hh:mm:ss`` and ``mm:ss`` format
to iso8601 strings, integer seconds, datetime.timedelta objects and 
(hours, minutes, seconds,) deltas

.. code:: python

    from duration import (
        to_iso8601,
        to_seconds,
        to_timedelta,
        to_tuple,
    )

    time = '1:23:45'

    iso8601 = to_iso8601(time) # 'PT01H23M45S'
    seconds = to_seconds(time) # 5025
    td = to_timedelta(time) # timedelta(hours=1, minutes=23, seconds=45)
    tuple_ = to_tuple(time) # (1, 23, 45,)

Examples above use strict mode by default. In strict mode, conversion 
functions raise ``StrictnessError`` if your duration string meets one of the
following conditions:

1. hh > 23
2. mm > 59
3. ss > 59

To disable strict mode, pass ``strict=False`` to the conversion function

.. code:: python

    from duration import (
        to_iso8601,
        to_seconds,
        to_timedelta,
        to_tuple,
    )

    time = '24:83:25'

    iso8601 = to_iso8601(time, strict=False) # 'P1DT01H23M25S'
    seconds = to_seconds(time, strict=False) # 91405
    td = to_timedelta(time, strict=False) # timedelta(seconds=91405)
    tuple_ = to_tuple(time, strict=False) # (25, 23, 25,)


