Python Dataclasses

The dataclasses module generates common methods such as __init__, __repr__, and optionally equality and ordering for classes primarily used to hold data. Field defaults need the same mutable-default care as function parameters.