from enum import EnumMeta, IntEnum
class DefaultEnumMeta(EnumMeta):
def __call__(cls, value=0, *args, **kwargs):
return super().__call__(value, *args, **kwargs)
class MyEnum(IntEnum, metaclass=DefaultEnumMeta):
A = 0
B = 1
C = 2
assert MyEnum() is MyEnum.A
assert MyEnum(0) is MyEnum.A
assert MyEnum(1) is not MyEnum.A
ZnJvbSBlbnVtIGltcG9ydCBFbnVtTWV0YSwgSW50RW51bQoKCmNsYXNzIERlZmF1bHRFbnVtTWV0YShFbnVtTWV0YSk6CiAgICBkZWYgX19jYWxsX18oY2xzLCB2YWx1ZT0wLCAqYXJncywgKiprd2FyZ3MpOgogICAgICAgIHJldHVybiBzdXBlcigpLl9fY2FsbF9fKHZhbHVlLCAqYXJncywgKiprd2FyZ3MpCgoKY2xhc3MgTXlFbnVtKEludEVudW0sIG1ldGFjbGFzcz1EZWZhdWx0RW51bU1ldGEpOgogICAgQSA9IDAKICAgIEIgPSAxCiAgICBDID0gMgoKCmFzc2VydCBNeUVudW0oKSBpcyBNeUVudW0uQQphc3NlcnQgTXlFbnVtKDApIGlzIE15RW51bS5BCmFzc2VydCBNeUVudW0oMSkgaXMgbm90IE15RW51bS5BCg==