My opinions added On Sun, Apr 28, 2013 at 12:32 PM, Ethan Furman <et...@stoneleaf.us> wrote: > Example enumeration: > > class Seasons(Enum): > SPRING = 1 > SUMMER = 2 > AUTUMN = 3 > WINTER = 4 > > days_in_year = 365 > > @property > def avg_temp(self): > return (75, 92, 66, 33)[int(self)+1] # enums are 1-based > > > Definite Issues: > > - should enum items be of the type of the Enum class? (i.e. type(SPRING) > is Seasons)
IMO Yes. > - should an enum item be selectable via __call__ instead of __getitem__ > (i.e. Seasons(3) is AUTUMN) No opinion. > - should days_in_year be enumerated? Yes. (If you don't want it to be, and it's not a method/descriptor, move it out of the class.) > - should avg_temp be enumerated? IMO No. > - for the above two, how should they be included/excluded? IMO Everything should be enumerated except (a) things with a __get__() method (i.e. descriptors) (b) __dunder__ names Also, I believe there's still an issue on the order in which items are returned by iter(Seasons), but I don't know which way this is heading. -- --Guido van Rossum (python.org/~guido) _______________________________________________ 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