With a constructor

Type initialization / Structures

from dataclasses import dataclass


# No structures: a dataclass is the closest,
# it writes the constructor itself
@dataclass
class Size:
    width: int
    height: int


@dataclass
class Point:
    top: int
    left: int


@dataclass
class Rectangle:
    size: Size
    point: Point


size = Size(10, 10)
# Arguments by name
point = Point(top=5, left=5)
rect = Rectangle(size, point)

print(f"{rect = }")