??? ?? ??
?? ??? ??? ???? ?? ??? __members__? ?? ??? ? ??? ? ? ????. ??
?? Enum? ?? ??? enum.py ??? ??? ???? ??? ????? ???????. ?? Enum ???? ??? ???????.
class Enum(metaclass=EnumMeta): """Generic enumeration. Derive from this class to define new enumerations. """
Enum? EnumMeta ?????? ???? ?? ? ? ????. ; ?? ???? EnumMeta
class EnumMeta(type): """Metaclass for Enum""" @property def __members__(cls): """Returns a mapping of member name->value. This mapping lists all enum members, including aliases. Note that this is a read-only view of the internal mapping. """ return MappingProxyType(cls._member_map_)
?? ???? ?????. ?? __members__ ???? Dict ?? Map? ??? MappingProxyType? ???? @property? ?? __members__(cls) ???? ??? ???? ?? ???? ?????. ?? ??? ? ?? ??? _ _members__ ?? ???????