相信很多小伙伴都听过枚举这个玩意儿,那么枚举是个啥,为什么要使用枚举呢,它能够解决哪些问题呢?接下来听小编一一道来。

枚举是个啥?

枚举从广义的理解可以是一个可被列举的集合,这个好像有点官方了,举个例子:

如周一到周日,这就是一个枚举。

枚举的两个特性:

  1. 可被列举的集合(不能是无穷无尽的)
  2. 不可变性 (一周7天我有生之年应该不会变了)
那么我们为什么要使用枚举呢?

因为要能过看得懂,宝贝。

python中的枚举啥意思(python枚举到底是个啥)(1)

看上面的代码同样是打印出周日,那个6是啥意思,完全看不懂,但是使用枚举类就一清二楚了,所做的一切都是为了让计算机语言更加偏向自然语言,也就是偏向于人能理解的话。

它能够以更接近自然语言的方式来表达数据,使得程序的可读性和可维护性大大提高。

当然了,python可以用来代替枚举类的方法有很多种,如字典:

但是这些都存在着一些问题:

1.枚举值可以修改 (别人随便改岂不是很危险)

2.用类定义的话,这些枚举功能的类可以被实例化

3.枚举值是否重复无法检查 (玩意写错了再调错了完蛋)

python中的枚举啥意思(python枚举到底是个啥)(2)

而使用枚举类有什么好处呢

1.不能被继承

2.定义之后不能在类内修改

3.枚举名称不能重复(这点和字典倒是一样的)如果名称重复则会覆盖

4.使用@unique可以识别值是否重复

python中的枚举啥意思(python枚举到底是个啥)(3)

,