A special kind of Enum that inherits from the base Enum class and int.
Why use this?
You can perform integer operations on it.
from enum import IntEnum
class MyIntEnum(IntEnum):
First = 1
Second = 2
assert MyIntEnum.First == 1
assert MyIntEnum.First + MyIntEnum.Second == 3Interestingly, since this class represents both an enum and an int, you can use it to convert a regular int into your enum class:
>>> MyIntEnum(2)
<MyIntEnum.Second: 2>