Python Standard Library Patterns

itertools, functools, json, datetime, uuid, regex, subprocess, typing, and enum recipes.

View
StandardDetailedCompact
Export
Copy the compact sheet, download it, or print it.
Download
`D` dense toggle · `C` copy all

Itertools and functools

Useful standard-library helpers for iteration and memoization.

Chain iterables

Chain iterables

pythonANYitertoolschain
python
from itertools import chain
combined = list(chain([1, 2], [3, 4]))

Group consecutive items

Group consecutive items

pythonANYitertoolsgroupby
python
from itertools import groupby
for key, group in groupby(sorted(words), key=len):
    print(key, list(group))

Cartesian product

Cartesian product

pythonANYitertoolsproduct
python
from itertools import product
pairs = list(product(["dev", "prod"], ["us", "eu"]))

Accumulate totals

Accumulate totals

pythonANYitertoolsaccumulate
python
from itertools import accumulate
running = list(accumulate([1, 2, 3, 4]))

LRU cache

LRU cache

pythonANYfunctoolscache
python
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)

JSON, datetime, and UUID

Serialization, timestamps, and identifiers.

Parse JSON

Parse JSON

pythonANYjsonstdlib
python
import json
data = json.loads(payload)

Dump JSON pretty

Dump JSON pretty

pythonANYjsonstdlib
python
output = json.dumps(data, indent=2, sort_keys=True)

Current UTC timestamp

Current UTC timestamp

pythonANYdatetimetimezone
python
from datetime import datetime, timezone
now = datetime.now(timezone.utc)

Parse ISO datetime

Parse ISO datetime

pythonANYdatetimeiso
python
from datetime import datetime
dt = datetime.fromisoformat("2026-03-07T12:30:00+00:00")

Generate UUID

Generate UUID

pythonANYuuidstdlib
python
import uuid
identifier = uuid.uuid4()

Regular expressions and subprocess

Regex and external command execution.

Regex find all

Regex find all

pythonANYregexre
python
import re
numbers = re.findall(r"\d+", text)

Regex named groups

Regex named groups

pythonANYregexre
python
import re
match = re.search(r"(?P<user>\w+)@(?P<host>[\w.]+)", email)
parts = match.groupdict()

Run subprocess

Run subprocess

pythonANYsubprocessshell
python
import subprocess
result = subprocess.run(["git", "status"], capture_output=True, text=True, check=True)
print(result.stdout)

Subprocess with shell disabled

Subprocess with shell disabled

pythonANYsubprocesssecurity
python
import subprocess
subprocess.run(["ls", "-la"], check=True)

Typing and enums

Typing and enum patterns.

Type alias

Type alias

pythonANYtypingalias
python
type UserId = int

Typed dict

Typed dict

pythonANYtypingtypeddict
python
from typing import TypedDict

class UserRow(TypedDict):
    id: int
    name: str

Optional type

Optional type

pythonANYtypingoptional
python
def find_user(user_id: int) -> str | None:
    ...

Generic list alias

Generic list alias

pythonANYtypinggenerics
python
def first(items: list[str]) -> str:
    return items[0]

Enum

Enum

pythonANYenumstdlib
python
from enum import Enum

class Status(Enum):
    OPEN = "open"
    CLOSED = "closed"