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

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.2.tar.gz (4.0 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.2-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for philiprehberger_list_chunk-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3ddd1b23170da1a544f79bc2a3d917deef7fb2cc0fa4f97d548cf2b036aaab75
MD5 0872d65bc1052fa4f54adc2bafa66be6
BLAKE2b-256 fcb01df0dee330f50891b48b6584ed8435ce69bfea6b8b1b2daa730b584fc371

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for philiprehberger_list_chunk-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 07e534ae83257a163b4e998ec7b51e1095bdc2e038d64a59750bddff4eabb1a3
MD5 7aa5e18c89f35253bf1b50dcdd93787f
BLAKE2b-256 01ab766dc9327438c7784badb3f963a5a6c12843c6f02a3d1611222196e79167

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