在Python中,枚举和我们在对象中定义的类变量时一样的,每一个类变量就是一个枚举项,访问枚举项的方式为:类名加上类变量。
- class color():
- YELLOW = 1
- RED = 2
- GREEN = 3
- PINK = 4
-
- # 访问枚举项
- print(color.YELLOW) # 输出结果为1
虽然这样是可以解决问题的,但是并不严谨,也不怎么安全,比如:
1、枚举类中,不应该存在key相同的枚举项(类变量)
2、不允许在类外直接修改枚举项的值
- class color():
- YELLOW = 1
- YELLOW = 3 # 注意这里又将YELLOW赋值为3,会覆盖前面的1
- RED = 2
- GREEN = 3
- PINK = 4
-
- # 访问枚举项
- print(color.YELLOW) # 3
-
- # 但是可以在外部修改定义的枚举项的值,这是不应该发生的
- color.YELLOW = 99
- print(color.YELLOW) # 99