[Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library (original) (raw)

R. David Murray rdmurray at bitdance.com
Mon Apr 22 03:12:05 CEST 2013


On Sun, 21 Apr 2013 20:28:16 -0400, Barry Warsaw <barry at python.org> wrote:

On Apr 22, 2013, at 09:02 AM, Nick Coghlan wrote:

>Iteration order matters a lot if you don't want people complaining about >enums being broken: > > class Days(enum.Enum): > Monday = 1 > Tuesday = 2 > Wednesday = 3 > Thursday = 4 > Friday = 5 > Saturday = 6 > Sunday = 7 Sorry, that's still not a complete use case. I don't see why you'd depend on iteration order over Days for any particular functionality. Besides, if you did, I think it would be better to derive Days from IntEnum and then iteration order is guaranteed over the values.

I didn't read Nick's message as being about a use case. The key word in the sentence above was "complaining" :)

Regardless of the specific values involved, it is pretty much guaranteed that if anything other than definition order is used we will get bug reports/enhancement requests to fix it, on a regular basis. We can choose to live with that, but we should admit that it will will happen :)

--David



More information about the Python-Dev mailing list