[Python-Dev] Enum: subclassing? (original) (raw)

Antoine Pitrou solipsis at pitrou.net
Wed May 1 23:11:16 CEST 2013


On Wed, 1 May 2013 14:04:11 -0700 Eli Bendersky <eliben at gmail.com> wrote:

You mean this? class BehaviorMixin: # bla bla class MyBehavingIntEnum(int, BehaviorMixin, Enum): foo = 1 bar = 2

Yes, but without the need for multiple inheritance and separate mixins ;-) Especially if the behaviour is enum-specific, e.g.:

class IETFStatusCode(IntEnum):

@classmethod
def from_statusline(cls, line):
    return cls(int(line.split()[0]))

class HTTPStatusCode(IETFStatusCode): NOT_FOUND = 404

class SIPStatusCode(IETFStatusCode): RINGING = 180

Regards

Antoine.



More information about the Python-Dev mailing list