How can I create a dataclass that has a custom dict representation?
Example dict output:
{
'$1': 'foo',
'$2': 'bar',
'$3': 'baz'
}
Obviously I can't have dataclass
@dataclass
class Foo:
$1: str
...
I would need it represented as
@dataclass
class Foo:
one: str
...
for example, but I would like dataclasses.asdict(foo) to return with the "$1" etc. key names.
Also it would be great if
x = {
'$1': 'foo',
'$2': 'bar',
'$3': 'baz'
}
foo = Foo(**x)
assert foo.one == 'foo'
assert foo.two == 'bar'
assert foo.three == 'baz'
worked