On Fri, 12 Apr 2013 10:19:29 -0400, Davis Silverman <sinistersn...@gmail.com> 
wrote:
> I think the reason they are not supporting __lt__, __gt__,etc. is because
> ints are optional values for enums, therefore it wouldnt be a good idea to
> compare enums of different types in that way.
> 
> example:
> 
> >>>class MyEnum(Enum):
> >>>   fir = 1
> >>>   sec = 2
> >>>   thir = "THIRD!"
> 
> and doing
> 
> >>> MyEnum.fir >= MyEnum.thir
> would give unexpected results, therefore not making it a great idea

That's why I included the bit about iterating the values.  The ordering
*is* defined.  I find it much more surprising for that ordering to
be inaccessible via the comparison operators.

I think either the iteration order should be undefined (like a set
or dict), or the comparison operations should work.  I'd prefer
the latter, because of the use case I outlined.

--David
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to