skip to navigation
skip to content

Not Logged In

toolz 0.5.0

List processing tools and functional utilities

Latest Version: 0.5.3


|Build Status| |Coverage Status| |Version Status| |Downloads|

A set of utility functions for iterators, functions, and dictionaries.

See the PyToolz documentation at


New BSD. See `License File <LICENSE.TXT>`__.


``toolz`` is on the Python Package Index (PyPi):


    pip install toolz



    easy_install toolz

Structure and Heritage

``toolz`` is implemented in three parts:

|literal itertoolz|_, for operations on iterables. Examples: ``groupby``,
``unique``, ``interpose``,

|literal functoolz|_, for higher-order functions. Examples: ``memoize``,
``curry``, ``compose``

|literal dicttoolz|_, for operations on dictionaries. Examples: ``assoc``,
``update-in``, ``merge``.

.. |literal itertoolz| replace:: ``itertoolz``
.. _literal itertoolz:

.. |literal functoolz| replace:: ``functoolz``
.. _literal functoolz:

.. |literal dicttoolz| replace:: ``dicttoolz``
.. _literal dicttoolz:

These functions come from the legacy of functional languages for list
processing. They interoperate well to accomplish common complex tasks.

Read our `API
Documentation <>`__ for
more details.


This builds a standard wordcount function from pieces within ``toolz``:

.. code:: python

    >>> def stem(word):
    ...     """ Stem word to primitive form """
    ...     return word.lower().rstrip(",.!:;'-\"").lstrip("'\"")

    >>> from toolz import compose, frequencies, partial
    >>> wordcount = compose(frequencies, partial(map, stem), str.split)

    >>> sentence = "This cat jumped over this other cat!"
    >>> wordcount(sentence)
    {'this': 2, 'cat': 2, 'jumped': 1, 'over': 1, 'other': 1}


``toolz`` supports Python 2.6+ and Python 3.2+ with a common codebase.
It is pure Python and requires no dependencies beyond the standard

It is, in short, a light weight dependency.

See Also

-  `Underscore.js <>`__: A similar library for
-  `Enumerable <>`__: A
   similar library for Ruby
-  `Clojure <>`__: A functional language whose
   standard library has several counterparts in ``toolz``
-  `itertools <>`__: The
   Python standard library for iterator tools
-  `functools <>`__: The
   Python standard library for function tools

Contributions Welcome

``toolz`` aims to be a repository for utility functions, particularly
those that come from the functional programming and list processing
traditions. We welcome contributions that fall within this scope and
encourage users to scrape their ```` files for functions that are
broadly useful.

Please take a look at our `issue
page <>`__ for contribution

.. |Build Status| image::
.. |Coverage Status| image::
.. |Version Status| image::
.. |Downloads| image::
File Type Py Version Uploaded on Size
toolz-0.5.0.tar.gz (md5) Source 2014-01-04 14KB
  • Downloads (All Versions):
  • 12 downloads in the last day
  • 650 downloads in the last week
  • 2778 downloads in the last month