Skip to main content

Rounds iterables (arrays, lists, sets, etc) while maintaining the sum of the initial array.

Project description

Iteround: Sum-safe Rounding for Iterables

.. image:: https://travis-ci.org/cgdeboer/iteround.svg?branch=master :target: https://travis-ci.org/cgdeboer/iteround

Iteround is an organic (standard library) sum-safe rounding library for Python iterables (lists, tuples, dicts).

.. image:: https://raw.githubusercontent.com/cgdeboer/iteround/master/docs/iteround.png

Example Code:

.. code-block:: python

>>> import iteround
>>> data = {'foo': 60.19012964572332,
            'bar': 15.428802458406679,
            'baz': 24.381067895870007}
>>> sum(data.values())
100.0
>>> rounded = iteround.saferound(data, 0)
>>> rounded
{'foo': 60.0,
 'bar': 16.0,
 'baz': 24.0}
>>> sum(rounded.values())
100.0

Feature Support

Iteround definitely supports at least these iterables.

  • list
  • tuple
  • dict

Iteround officially supports Python 2.7 & 3.4–3.6.

Installation

To install Iteround, use pipenv <http://pipenv.org/>_ (or pip, of course):

.. code-block:: bash

$ pipenv install iteround

Documentation

Documentation beyond this readme will be available soon.

How to Contribute

#. Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug. #. Fork the repository_ on GitHub to start making your changes to the master branch (or branch off of it). #. Write a test which shows that the bug was fixed or that the feature works as expected. #. Send a pull request. Make sure to add yourself to AUTHORS_.

.. _the repository: https://github.com/requests/requests .. _AUTHORS: https://github.com/requests/requests/blob/master/AUTHORS.rst

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iteround-1.0.0.tar.gz (4.3 kB view hashes)

Uploaded Source

Built Distribution

iteround-1.0.0-py3-none-any.whl (5.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page