[Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library (original) (raw)
Ethan Furman ethan at stoneleaf.us
Fri Apr 12 21:58:22 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 04/12/2013 12:37 PM, � wrote:
On Fri, Apr 12, 2013 at 7:21 PM, Russell E. Owen <rowen at uw.edu> wrote:
Using intEnum is certainly doable, but that opens up the door to comparing values from different Enums, which is not something I'd want to allow. I agree. Comparing values from different Enums could cause a lot of hard to find bugs. On the other hand, simply checking in
_cmp_what Enum both values belong to (since they do have aenumattribute) should allow us to avoid cross-comparing instead of just raising a TypeError. It's not very intuitive behavior IMHO.
Something like this is what happens for Enums, but IntEnums are subtypes of int, and if we had something like:
class Fruit(IntEnum): apples = 1 bananas = 2 oranges = 3
class Flowers(IntEnum): roses = 1 lillies = 2 violets = 3
--> Fruit.apples == 1 True
--> Flowers.roses == 1 True
--> Fruit.apples == 1 == Flowers.roses ???
This way lies madness.
--
Ethan
- 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 ]