前言
之所以博主思考再三,开设一个数据结构的基础冷门课程。是因为目前大多数数据结构的书籍都使用的是C/C++,无疑增加了学习的门槛。
而python语言相对来说,更容易入门掌握,通过python学习数据结构与算法,对于初学者似乎更加的友好。
本篇,首先介绍的是枚举类型。在python库中,提供了枚举模块enum。通过该模块,我们可以定义程序员容易理解的字面量整数与字符串。
创建枚举
话不多说,我们先来创建一个简单的枚举类:星期。也就是让程序员容易理解的星期几的枚举类。具体定义方式如下:
import enum
class Week(enum.Enum):
Monday = 1
Tuesday = 2
Wednesday = 3
Thursday = 4
Friday = 5
Saturday = 6
Sunday = 7
print("name", Week.Monday.name)
print("value", Week.Monday.value)
运行之后,控制台输出如下:
从上面的代码,我们知道,定义一个枚举类,必须派生Enum。而且还要定义描述值的类属性name与具体的值value。
迭代枚举
这里,因为是我们主动定义的枚举类,所以我们能知道具体的name和value。但是多数情况下,我们引用别人定义的枚举类,并不清楚具体的name与value。这个时候,就需要遍历来获取其枚举的各个成员。
下面,我们来遍历上面的星期枚举,具体代码如下所示:
import enum
class Week(enum.Enum):
Monday = 1
Tuesday = 2
Wednesday = 3
Thursday = 4
Friday = 5
Saturday = 6
Sunday = 7
for i in Week