pythonANYitertoolschain
python
from itertools import chain
combined = list(chain([1, 2], [3, 4]))itertools, functools, json, datetime, uuid, regex, subprocess, typing, and enum recipes.
Useful standard-library helpers for iteration and memoization.
from itertools import chain
combined = list(chain([1, 2], [3, 4]))from itertools import groupby
for key, group in groupby(sorted(words), key=len):
print(key, list(group))from itertools import product
pairs = list(product(["dev", "prod"], ["us", "eu"]))from itertools import accumulate
running = list(accumulate([1, 2, 3, 4]))from functools import lru_cache
@lru_cache(maxsize=128)
def fib(n: int) -> int:
return n if n < 2 else fib(n - 1) + fib(n - 2)Serialization, timestamps, and identifiers.
import json
data = json.loads(payload)output = json.dumps(data, indent=2, sort_keys=True)from datetime import datetime, timezone
now = datetime.now(timezone.utc)from datetime import datetime
dt = datetime.fromisoformat("2026-03-07T12:30:00+00:00")import uuid
identifier = uuid.uuid4()Regex and external command execution.
import re
match = re.search(r"\d+", text)import re
numbers = re.findall(r"\d+", text)import re
match = re.search(r"(?P<user>\w+)@(?P<host>[\w.]+)", email)
parts = match.groupdict()import subprocess
result = subprocess.run(["git", "status"], capture_output=True, text=True, check=True)
print(result.stdout)import subprocess
subprocess.run(["ls", "-la"], check=True)Typing and enum patterns.
type UserId = intfrom typing import TypedDict
class UserRow(TypedDict):
id: int
name: strdef find_user(user_id: int) -> str | None:
...def first(items: list[str]) -> str:
return items[0]from enum import Enum
class Status(Enum):
OPEN = "open"
CLOSED = "closed"