@dataclass
@dataclass automatically generates __init__, __repr__, and __eq__ for classes that mainly store data.
@dataclass automatically generates __init__, __repr__, and __eq__ for classes that mainly store data.
from dataclasses import dataclass, field
@dataclass
class Point:
x: float
y: float
label: str = "origin"
p = Point(1.0, 2.0)
print(p) # Point(x=1.0, y=2.0, label="origin")
print(p == Point(1.0, 2.0)) # True
Use frozen=True to make a dataclass immutable and hashable.