Python3枚举类比较有什么限制?
2023-03-20 15:36:20 时间
上篇文章我们讲过了枚举法处理重复名称的方法,那么在使用枚举法上面,小伙伴知道有什么使用方面的限制吗?在收到小伙伴们的催促之前,小编已经提前想到了这个问题。经过对python3枚举法的学习与查阅,整理出了使用枚举法需要注意的事项,分享给大家。
枚举类型不能做大小比较,但是可以做身份比较和等值比较。
Color.RED is Color.RED #True Color.RED is Color.BLUE #False
这是身份比较,每个对象都可以进行身份比较,枚举类也不例外。
Color.BLUE == Color.RED Color.BLUE != Color.RED
这是等值比较,枚举类可以进行等值比较。
Color.RED < Color.BLUE Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: '<' not supported between instances of 'Color' and 'Color'
枚举类型没有定义比较运算符,通常不能进行大小比较(不过,继承“IntEnum"类的枚举类型可以进行大小比较,他们的枚举值只能是整数)。
枚举类的其他特性
最有趣的也是最重要的是枚举类型是使用单例模式实现的。在创建枚举类的时候,Python就在内存中为我们创建了枚举类的对象,因此我们不必实例化枚举类。并且由于枚举类的“__new__”方法,将会保证内存中只会存在一个枚举类的实例。
今天使用枚举法需要注意的事项到这里就分享结束了,怕忘记的小伙伴记住保存下来,不然下次找不到就比较麻烦了。
相关文章
- Python中的函数与方法 以及Bound Method和Unbound Method
- 一文贯通python文件读取
- Python 中的异步编程:Asyncio
- 7个你现在就该学习Python的理由
- 提高Python运行效率的六个窍门
- Python数据科学:神经网络
- 一篇文章看懂大数据分析就业前景及职能定位
- R和Python中的文本挖掘:8个入门小贴士
- 告诉你为什么Python有点慢,但我却无所谓?
- 专注学习DevOps编程语言Top 5推荐
- Python发送邮件脚本
- Python多进程并行编程实践: mpi4py 的使用
- Python语言在未来的发展前景
- Python vs Ruby: 谁是最好的 web 开发语言?
- Python对Ruby:谁在Web开发领域更胜一筹?
- Python一行代码完成并行任务
- Python开发者2017应该关注的七个类库
- python爬虫入门基本知识
- 在终端中优雅地编写Python
- Python机器学习实战:信用卡欺诈检测