I have a Python enum:
class E(Enum):
A = 1
B = 2
It is part of a public interface, people pass E.A
or E.B
to various functions to specify some parameter. I want to augment this enum to add a third value, C
, but this value only makes sense if you also pass a couple of additional parameters, x
and y
. So in addition to allowing my users to pass E.A
or E.B
, I want them to be able to pass e.g. E.C(x=17,y=42)
, and have my code access the values of these parameters (here, 17 and 42).
What's the most "pythonic" way of achieving this? I'm using Python 3.7.