枚举类,key重复是不允许的,但是值重复是可以的,可如果我也不允许值重复呢?只需要加上一个装饰器即可
python import enum try: @enum.unique class Color(enum.Enum): red = 1 green = 2 blue = 3 yellow = 4 pink = 5 cyan = [] purple = [] except Exception as e: print(e) # duplicate values found in <enum 'Color'>: purple -> cyan # 提示我们purple和cyan的value重复了之前说过,枚举成员是不支持大小比较的,但如果我想支持呢?
python import enum # 换一种继承的类,改成IntEnum class Color(enum.IntEnum): red = 1 green = 2 blue = 3 yellow = 4 pink = 5 cyan = "6" # 此时里面的成员要是int类型,或者能将字符串转成int print(Color.red < Color.blue) # True print(Color.red + Color.cyan) # 7转载于:https://www.cnblogs.com/valorchang/p/11395476.html
相关资源:JAVA上百实例源码以及开源项目