因为枚举成员不是有序的,所以它们只支持通过标识(identity) 和相等性 (equality) 进行比较。下面来看看 == 和 is 的使用:#!/usr/bin/env python3

# -*- coding: UTF-8 -*-

from enum import Enum

class User(Enum):

Twowater = 98

Liangdianshui = 30

Tom = 12

Twowater = User.Twowater

Liangdianshui = User.Liangdianshui

print(Twowater == Liangdianshui, Twowater == User.Twowater)

print(Twowater is Liangdianshui, Twowater is User.Twowater)

try:

print('\n'.join('  ' + s.name for s in sorted(User)))

except TypeError as err:

print(' Error : {}'.format(err))

输出的结果:False True

False True

Error : '

可以看看最后的输出结果,报了个异常,那是因为大于和小于比较运算符引发 TypeError 异常。也就是 Enum 类的枚举是不支持大小运算符的比较的。

那么能不能让枚举类进行大小的比较呢?

当然是可以的,使用 IntEnum 类进行枚举,就支持比较功能。#!/usr/bin/env python3

# -*- coding: UTF-8 -*-

import enum

class User(enum.IntEnum):

Twowater = 98

Liangdianshui = 30

Tom = 12

try:

print('\n'.join(s.name for s in sorted(User)))

except TypeError as err:

print(' Error : {}'.format(err))

看看输出的结果:Tom

Liangdianshui

Twowater

通过输出的结果可以看到,枚举类的成员通过其值得大小进行了排序。也就是说可以进行大小的比较。

php 枚举类型比较,枚举的比较-python编程入门系列图文教程-PHP中文网教程相关推荐

  1. php元类,什么是元类-python编程入门系列图文教程-PHP中文网教程

    通过上面的介绍,终于模模糊糊的带到元类这里来了.可是我们到现在还不知道元类是什么东东. 我们创建类的时候,大多数是为了创建类的实例对象.那么元类呢?元类就是用来创建类的.也可以换个理解方式就是:元类就 ...

  2. python编程怎么命名_命名规范-python编程入门系列图文教程 - Python学习网

    命名规范命名规范 1.模块 模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况) # 正确的模块名 import decoder import html_parse ...

  3. Python编程入门系列课程

    原文:https://mc.dfrobot.com.cn/thread-309195-1-1.html Python编程入门系列课程--教程目录: Python编程入门系列课程--01 智能绘星 Py ...

  4. ef 在此上下文中只支持基本类型或枚举类型_Java枚举不应该成为你成功路上得绊脚石,源码给你讲解清楚

    现在在面试的过程中,基础得东西占的比重越来越高,尤其是对于Java底层得一些东西,比方说今天得内容---枚举,单纯说这些知识点其实并不难,甚至在日常得工作中用到的都不算多,但是,在面试的过程中会问到你 ...

  5. TZC Python编程入门教程 ————题解

    本博客原文地址:Python编程入门教程(以在线评测平台为载体) - 暴力都不会的蒟蒻 - 博客园,原文体验更佳 如果你是一名浙江2020级及以后的高中生要学习Python,抑或是一位科学工作者要学习 ...

  6. python编程语法大全-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 关于怎么快速学python,可以加下小编的python学习群:611+530+101,不管你是小白还是大牛,小编我都欢迎,不定期分享干货 每天 ...

  7. python编程语法-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_num ...

  8. python编程if语法-Python编程入门基础语法详解经典

    原标题:Python编程入门基础语法详解经典 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_number = ...

  9. python编程语法-Python编程入门——基础语法详解(经典)

    今天小编给大家带来Python编程入门--基础语法详解.温馨提示: 亮点在最后! 在这里还是要推荐下我自己建的Python开发学习群:301056051,群里都是学Python开发的,如果你正在学习P ...

最新文章

  1. 终极大招——怎么在学术会议上有所收获?
  2. questions in the wind
  3. android path 合并_Android合并音频文件
  4. 备战“双11”,阿里云为企业提供一站式资源保障服务
  5. 链接服务器 '(null)' 的 OLE DB 访问接口'STREAM' 返回了对列 '[!BulkInsert].field' 无效的数据...
  6. java数组随机抽取分布均匀_java利用数组随机抽取幸运观众
  7. Simulink之变压器漏抗对整流电路的影响
  8. dj鲜生-用户中心-历史购物
  9. 上传图片时,使用GDI+中重绘方式将CMYK图片转为RGB图片
  10. 办公技巧分享:如何编辑PDF文件内容
  11. 中文简历表格提取,手写汉字识别(Python+OpenCV)
  12. 一、64位windows 安装mysql
  13. CentOS怎样添加字体
  14. 计算机wifi无法打开,苹果Mac电脑WiFi无法打开解决办法
  15. 数学词汇的英译,写文章,读文献必备
  16. scikit-learn 支持向量机算法库使用小结
  17. DPC_WATCHDOG_VIOLATION蓝屏分析
  18. 【HTML】HTML网页设计---叮当猫网页设计
  19. 用java代码实现,使用5升和6升的水杯装出3升的水
  20. 双门限法语音端点检测(Python实现)

热门文章

  1. Direct3D的一些小贴士收藏(转载)
  2. chrome web store的信息
  3. 微软推出免费在线系统诊断工具--不用手动下载
  4. NOIP模拟赛10 题解
  5. C#替换字符串起始/结尾指定的字符串
  6. 乐视云计算基于OpenStack的IaaS实践
  7. aspose将datatable导出excel 比自己拼好的多 Bug少-。.net
  8. vue从入门到精通之进阶篇(五)脚手架vue-cli
  9. JS对象与jQuery对象
  10. 05 state与setState、单向数据流