More routines for operating on iterables, beyond itertools
Project description
Python’s itertools library is a gem - you can compose elegant solutions for a variety of problems with the functions it provides. In more-itertools we collect additional building blocks, recipes, and routines for working with Python iterables.
Getting started
To get started, install the library with pip:
pip install more-itertools
The recipes from the itertools docs are included in the top-level package:
>>> from more_itertools import flatten
>>> iterable = [(0, 1), (2, 3)]
>>> list(flatten(iterable))
[0, 1, 2, 3]
Several new recipes are available as well:
>>> from more_itertools import chunked
>>> iterable = [0, 1, 2, 3, 4, 5, 6, 7, 8]
>>> list(chunked(iterable, 3))
[[0, 1, 2], [3, 4, 5], [6, 7, 8]]
>>> from more_itertools import spy
>>> iterable = (x * x for x in range(1, 6))
>>> head, iterable = spy(iterable, n=3)
>>> list(head)
[1, 4, 9]
>>> list(iterable)
[1, 4, 9, 16, 25]
For the full listing of functions, see the API documentation.
Development
more-itertools is maintained by @erikrose and @bbayles, with help from many others. If you have a problem or suggestion, please file a bug or pull request in this repository. Thanks for contributing!
Version History
3.2.0
- New itertools:
lstrip, rstrip, and strip (thanks to MSeifert04 and pylang)
islice_extended
- Improvements to existing itertools:
Some bugs with slicing peekable-wrapped iterables were fixed
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for more_itertools-3.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e744b8eb1d911ea7fe915244aa98393b119c07d116e754126450a0b7d03d7e33 |
|
MD5 | 17e2977b6d79fadb5918037076cb8ce4 |
|
BLAKE2b-256 | a67eb5f4dc46dc5964c798d9ba307d8331c86fb08c57c7a5b08100463155a16e |
Hashes for more_itertools-3.2.0-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e2ec20d4227a3897f6cdb1fb6f4c1045495f44656e2af11a363db21e34f484f |
|
MD5 | 4a126e3abcebbb05f8999a8f8f8c3997 |
|
BLAKE2b-256 | e290bdfb44069b942764eefcaecd5af4923ba0a66d090e0250e9163bb0a53378 |