Python3面向对象--6enumerate和Enum枚举类和枚举函数

python有枚举类和枚举函数。
1.enumerate:枚举函数
语法
enumerate(可迭代对象,序号开始的值(默认为0))
返回一系列元组,元组第一个值为像0123…的值,第二个元素为原对象。

a=('小明','小黑','小红')
for index,value in enumerate(a):
    print('序号为{0},值为{1}'.format(index,value))

b=list(enumerate(a))
print(b)

序号为0,值为小明
序号为1,值为小黑
序号为2,值为小红
[(0, '小明'), (1, '小黑'), (2, '小红')]

Process finished with exit code 0


2.Enum
枚举跟整型一样,是一种数据类型。它是一系列常量的集合,通常用于表示某些特定的有限集合,如月份、星期、状态、性别(男、女、不男不女)等,当一个变量有几种可能取值的时候,定义为枚举类型
特点:

1.枚举类中不能存在相同的标签名
2.枚举是可迭代的
3.不同的枚举标签可以对应相同的值,但它们都会被视为该值对应第一个标签的别名
4.如果要限制定义枚举时,不能定义相同值的成员。可以使用装饰器@unique【要导入unique模块】
5.枚举成员之间不能进行大小比较,可进行等值和同一性(is)比较
6.枚举成员为单例,不可实例化,不可更改

语法:

from enum import Enum
class 枚举名(Enum):
成员名1 = 值1
成员名x = 值n

from enum import Enum
class Day (Enum):
    星期一='上学'
    星期二='上学'
print(Day.星期二)
#.不同的枚举标签对应相同的值时候,会被视为该值对应第一个标签的别名
Day.星期一
#输出第一个标签的名字
#定义一个计划表的类,运用枚举类型,根据星期的不同初始化也不同
class Plan:
  def __init__(self, day):
     self.day = day
# 类的成员
  class Day(Enum):
      星期一 = '篮球'
      星期二 = '足球'
      星期三 = '数学'
      星期四 = '外语'
      星期五 = '计算机'

plan = Plan(Plan.Day.星期一.value)
print(plan.day)

Day.星期一
篮球
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值