相信很多小伙伴都听过枚举这个玩意儿,那么枚举是个啥,为什么要使用枚举呢,它能够解决哪些问题呢?接下来听小编一一道来。
枚举是个啥?枚举从广义的理解可以是一个可被列举的集合,这个好像有点官方了,举个例子:
如周一到周日,这就是一个枚举。
枚举的两个特性:
- 可被列举的集合(不能是无穷无尽的)
- 不可变性 (一周7天我有生之年应该不会变了)
因为要能过看得懂,宝贝。
看上面的代码同样是打印出周日,那个6是啥意思,完全看不懂,但是使用枚举类就一清二楚了,所做的一切都是为了让计算机语言更加偏向自然语言,也就是偏向于人能理解的话。
它能够以更接近自然语言的方式来表达数据,使得程序的可读性和可维护性大大提高。
当然了,python可以用来代替枚举类的方法有很多种,如字典:
但是这些都存在着一些问题:
1.枚举值可以修改 (别人随便改岂不是很危险)
2.用类定义的话,这些枚举功能的类可以被实例化
3.枚举值是否重复无法检查 (玩意写错了再调错了完蛋)
而使用枚举类有什么好处呢
1.不能被继承
2.定义之后不能在类内修改
3.枚举名称不能重复(这点和字典倒是一样的)如果名称重复则会覆盖
4.使用@unique可以识别值是否重复
,