python 为元组的每个元素命名



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

你可能感兴趣的:(元组,python,常量,命名,namedtuple,python)