Module

rendering.template_functions.advanced_collections

Advanced collection manipulation functions for templates.

Provides 3 advanced functions for working with lists.

Functions

register
Register advanced collection functions with Jinja2 environment.
2 None
def register(env: Environment, site: Site) -> None

Register advanced collection functions with Jinja2 environment.

Parameters 2

Name Type Default Description
env Environment
site Site
sample
Get random sample of items.
3 list[Any]
def sample(items: list[Any], count: int = 1, seed: int | None = None) -> list[Any]

Get random sample of items.

Parameters 3

Name Type Default Description
items list[Any]

List to sample from

count int 1

Number of items to sample (default: 1)

seed int | None None

Random seed for reproducibility (optional)

Returns

list[Any]

Random sample of items

shuffle
Shuffle items randomly.
2 list[Any]
def shuffle(items: list[Any], seed: int | None = None) -> list[Any]

Shuffle items randomly.

Parameters 2

Name Type Default Description
items list[Any]

List to shuffle

seed int | None None

Random seed for reproducibility (optional)

Returns

list[Any]

Shuffled copy of list

chunk
Split list into chunks of specified size.
2 list[list[Any]]
def chunk(items: list[Any], size: int) -> list[list[Any]]

Split list into chunks of specified size.

Parameters 2

Name Type Default Description
items list[Any]

List to chunk

size int

Chunk size

Returns

list[list[Any]]

List of chunks