Skip to main content

Split iterables into evenly sized chunks

Project description

philiprehberger-list-chunk

Tests PyPI version License

Split iterables into evenly sized chunks.

Installation

pip install philiprehberger-list-chunk

Usage

from philiprehberger_list_chunk import chunk, chunk_by, sliding_window, interleave, flatten

chunk([1, 2, 3, 4, 5], size=2)
# [[1, 2], [3, 4], [5]]

chunk([1, 2, 3], size=2, pad=0)
# [[1, 2], [3, 0]]

chunk_by([1, 1, 2, 2, 3], key=lambda x: x)
# [[1, 1], [2, 2], [3]]

sliding_window([1, 2, 3, 4, 5], size=3)
# [[1, 2, 3], [2, 3, 4], [3, 4, 5]]

interleave([1, 2, 3], ["a", "b", "c"])
# [1, "a", 2, "b", 3, "c"]

flatten([[1, 2], [3, 4]])
# [1, 2, 3, 4]

API

  • chunk(items, size, pad=None) — Fixed-size chunks
  • chunk_by(items, key) — Group consecutive elements by key
  • sliding_window(items, size, step=1) — Sliding window views
  • interleave(*iterables) — Round-robin interleave
  • flatten(nested) — Flatten one level of nesting

Development

pip install -e .
python -m pytest tests/ -v

License

MIT

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

philiprehberger_list_chunk-0.1.5.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

philiprehberger_list_chunk-0.1.5-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file philiprehberger_list_chunk-0.1.5.tar.gz.

File metadata

File hashes

Hashes for philiprehberger_list_chunk-0.1.5.tar.gz
Algorithm Hash digest
SHA256 0a260e5721f15ec31db0f876b6f7846e6364532ea801915c937eaef81740918e
MD5 f13e46042e3c3093e8f0acef71e39829
BLAKE2b-256 8bfa26b129d62e341c6fcc89b6836b861b04543321f6bf0c4252d239d0fb2521

See more details on using hashes here.

File details

Details for the file philiprehberger_list_chunk-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for philiprehberger_list_chunk-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e8f8451b6186a0a894b48d045775af1c71114a948f1b7f0c22b280146b5acdf4
MD5 f893e202b914b78b471545fb6d315dc5
BLAKE2b-256 560a937938dd24c223603934741bf1aeb8344fb5e40cf0f799b4754e1a216758

See more details on using hashes here.

Supported by

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