[Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library (original) (raw)
R. David Murray rdmurray at bitdance.com
Fri Apr 12 16:23:47 CEST 2013
- Previous message: [Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library
- Next message: [Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Fri, 12 Apr 2013 10:19:29 -0400, Davis Silverman <sinistersnare at 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
- Previous message: [Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library
- Next message: [Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]