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

Georg Brandl g.brandl at gmx.net
Wed May 1 20:59:15 CEST 2013


Am 01.05.2013 20:44, schrieb Antoine Pitrou:

On Wed, 01 May 2013 10:21:30 -0700 Ethan Furman <ethan at stoneleaf.us> wrote:

We may not want to /completely/ disallow subclassing. Consider:

--> class StrEnum(str, Enum): ... '''string enums for Business Basic variable names''' ... --> class Vendors(StrEnum): EnumError: subclassing not allowed I don't see the point of disallowing subclassing. It sounds like a pointless restriction. However, perhaps the constructor should forbid the returning of a base type, e.g.: class Season(Enum): spring = 1 class MySeason(Season): """I look nicer than Season""" MySeason('spring') ... ValueError: Season.spring is not a MySeason instance (what this means is perhaps the subclassing of non-empty enum classes should be forbidden)

That's exactly what's implemented in the ref435 code at the moment.

Georg



More information about the Python-Dev mailing list