Python `dataclass` `__repr__` shows `init=False` members
01:41 18 Nov 2025

Python 3.13.3

import dataclasses

@dataclasses.dataclass
class MyClass:
    a: int
    b: int = dataclasses.field(default=0, init=False)


m = MyClass(a=0)
print(repr(m))
# prints: "MyClass(a=0, b=0)"

# `eval(repr(m))` raises an exception due to unexpected `b=0`.

Shouldn't b be omitted from repr - i.e., eval(repr(m)) shall be able to recreate an instance?

python python-dataclasses repr