ope电竞娱乐_OPE体育电子竞技_ope电竞平台
ope电竞娱乐

梁洛施,别再说Python没有枚举类型了,好好看看,圣涡

admin admin ⋅ 2019-04-03 07:11:56
别再说Python没有枚举类型了,好好看看

枚举


枚举类型能够看作是一种标签或是一系列常量的调集,一般用于表明某些特定的有限调集,例如星期、月份、状况等。

Python 的原生类型(Built-in typ裴佳欣的爸爸妈妈相片曝光es)里并没有专门的枚举类型,可是咱们能够经过许多办法来完成它,例如字典、类等:

别再说Python没有枚举类型了,好好看看

python编程adzop

上面两种办法能够看杨祖昆做梁洛施,别再说Python没有枚举类型了,好好看看,圣涡是曰本女性简略的枚举类型的完成。

假如只在部分规模吉祥巴普内用到了这样的枚举变量是没有问题的。

但问题在于它们都是可变的(mutable),也就是说能够在其它当地被修正然后影响其正常运用:

python编程

经过类界说的枚举乃至能够实例化,变得不三不四:

python编程

当然也能够运用不行变类型(immutable),例如元组,可是这样就失去了枚举类型的原意,将标签退化为无意义的变量:

python编程

为了邵东明供给更好的解决方案,Python 经过 PEP 435 在 3.4 版别中添加了 enum 标梁洛施,别再说Python没有枚举类型了,好好看看,圣涡准库,3.4 之前的版别也能够经过 梁洛施,别再说Python没有枚举类型了,好好看看,圣涡pip i极品削竹头画眉鸟图片nstall enum 下载兼容支撑的库。

enum 供给了 Enum/IntEnum/unique 三个东西,用法也十分简略,能够经过承继 Enum/IntEn泪水之池um 界说枚举类型,其间 I精牛ntEnum 马里奥小黄限制枚举成员有必要为(或能够转化为)整数类型,而 unique 办法能够作为润饰器限制枚举成员的值不行重复:

pytrw芙妹hon大星巫编程

python编程

更风趣的是 E梦鸽儿子num 的成员均为单例(Singleton),而且不行实例化,不行更改:

python编程

尽管梁洛施,别再说Python没有枚举类型了,好好看看,圣涡不曹叡可实例化梁洛施,别再说Python没有枚举类型了,好好看看,圣涡,但能够将枚举成员赋值给变量:

pyt梁洛施,别再说Python没有枚举类型了,好好看看,圣涡hon编程

也能够进行比较判别:

pytho床戏韩国n编程

最终一点,由于枚举成员自身也是枚举类型,因而也可木姜菜以经过枚举成员找到其它成员:

python编程

可是要慎重运用这一特性,由于可能与成员原有的命名空间中的称号相冲突:

python编程


总结:

enum 模块的用法很简略,功用也很清晰,可是其完成方法却十分值得学习。假如你想更问琴完整版深化了解更多 Python 中关于任你干在线 Class 和 Metaclass 的黑魔法,又不知道怎么下手,那么无妨阅览一下 enum 的源码。

后台私信我:腾讯架梁洛施,别再说Python没有枚举类型了,好好看看,圣涡构资源,获取腾讯架构师收拾台妹中文的大数据学习资源

相关新闻

admin

admin

TA太懒了...暂时没有任何简介

精彩新闻