- 定义类似于枚举常量的数据充当索引值
- 使用collection.nametuple代替传统的内置tuple
示例代码
# 使用索引进行访问,大大降低了程序的可读性
stu = ("Jim", 16, "male", "huizhang0110@foxmail.com")
print("name = {}, age = {}, gender = {}, email = {}".format(stu[0], stu[1], stu[2], stu[3]))
# 使用类似于其他语言的枚举类型,也就是定义一系列枚举常量
NAME, AGE, GENDER, EMAIL = range(4)
print("name = {}, age = {}, gender = {}, email = {}".format(stu[NAME], stu[AGE], stu[GENDER], stu[EMAIL]))
# 使用标准库的collection.nametuple代替内置的tuple
from collections import namedtuple
Stu = namedtuple("Stu", ["name", "age", "sex", "email"]) # 类似于 struct Stu{name, age, sex, email}
s = Stu("jim", 16, "mail", "huizhang0110@foxmail.com")
print("name = {}, age = {}, gender = {}, email = {}".format(s.name, s.age, s.sex, s.email))