Skip to main content

CyToolz

Build Status Version Status

Cython implementation of the toolz package, which provides high performance utility functions for iterables, functions, and dictionaries.

toolz is a pure Python package that borrows heavily from contemporary functional languanges. It is designed to interoperate seamlessly with other libraries including itertools, functools, and third party libraries. High performance functional data analysis is possible with builtin types like list and dict, and user-defined data structures; and low memory usage is achieved by using the iterator protocol and returning iterators whenever possible.

cytoolz implements the same API as toolz. The main differences are that cytoolz is faster (typically 2-5x faster with a few spectacular exceptions) and cytoolz offers a C API that is accessible to other projects developed in Cython. Since toolz is able to process very large (potentially infinite) data sets, the performance increase gained by using cytoolz can be significant.

See the PyToolz documentation at https://toolz.readthedocs.io and the full API Documentation for more details.

LICENSE

New BSD. See License File.

Install

cytoolz is on the Python Package Index (PyPI):

pip install cytoolz

Dependencies

cytoolz supports Python 2.7+ and Python 3.4+ with a common codebase. It is developed in Cython, but requires no dependecies other than CPython and a C compiler. Like toolz, it is a light weight dependency.

Contributions Welcome

toolz (and cytoolz) 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 util.py files for functions that are broadly useful.

Please take a look at our issue pages for toolz and cytoolz for contribution ideas.

Community

See our mailing list. We’re friendly.

Metadata

Release files for cytoolz 0.10.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cytoolz 0.10.1
File Size Uploaded
cytoolz-0.10.1.tar.gz 475.6 kB Details

Release files / cytoolz-0.10.1.tar.gz

Download URL cytoolz-0.10.1.tar.gz
Size 475.6 kB
Tags Source
SHA-256 checksum
How to use checksums
82f5bba81d73a5a6b06f2a3553ff9003d865952fcb32e1df192378dd944d8a5c
BLAKE2b-256 checksum
How to use checksums
62b17f16703fe4a497879b1b457adf1e472fad2d4f030477698b16d2febf38bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191030 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.5
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page