Struct

2 snippets in Python

PYPython

Named Tuples

PY · Tuples & Sets
syntax
from collections import namedtuple
Point = namedtuple('Point', ['x', 'y'])
example
from collections import namedtuple

Color = namedtuple("Color", ["red", "green", "blue"])
sky = Color(135, 206, 235)
print(sky.red, sky.blue)
print(sky._asdict())
output
135 235
{'red': 135, 'green': 206, 'blue': 235}

Note Named tuples give readable field access while staying immutable. For mutable fields or defaults, consider dataclasses instead.

Dataclasses

PY · Classes & OOP
syntax
from dataclasses import dataclass
@dataclass
class Name:
    field: type
example
from dataclasses import dataclass, field

@dataclass
class Product:
    name: str
    price: float
    tags: list[str] = field(default_factory=list)

    @property
    def display_price(self) -> str:
        return f"${self.price:.2f}"

p = Product("Widget", 9.99, ["sale"])
print(p)
print(p.display_price)
output
Product(name='Widget', price=9.99, tags=['sale'])
$9.99

Note Dataclasses auto-generate __init__, __repr__, and __eq__. Use field(default_factory=list) for mutable defaults, never a bare [] as a default.