访问元组的信息时,我们使用索引(index)访问,会大量降低程序可读性,所以用以下两种方式可以解决这个问题。
  1. 定义类似于其他语言的枚举类型,也就是定义一系列数值常量

  2. 使用标准库中 collections.namedtuple 替代内置tuple

方法一:

NAME = 0
AGE = 1
SEX = 2
EMAIL = 3

student = ('Dimples', 23, '女', '[email protected]')


if student[AGE] >= 18:  # student[1] >= 18
    pass

if student[SEX] == '女':  # student[2] == '女'
    pass

方法二:

使用标准库中 collections.namedtuple 替代内置tuple

from collections import namedtuple

相当于类的工厂:

类型 = namedtuple('创建子类的名字’,[一系列的名字])
Student = namedtuple('Student', ['name', 'age', 'sex', 'email'])s = Student('Dinples', 23, '女', '[email protected]')

以类对象的形式访问元组:

s.name