美文网首页
Python如何为元组命名来提高程序可读性

Python如何为元组命名来提高程序可读性

作者: 我有一只碗 | 来源:发表于2017-07-21 10:52 被阅读0次

    不要过度构建数据结构。尽量使用元组(以及命名元组)而不是对象。
    ——Guido van Rossum

    某学生信息系统中的数据格式为固定格式:
    (学号、姓名、性别、年龄)

    为了减少内存开销,每个学生信息用元组表示:
    (1, 'Tom', 'M', 20)
    (2, 'Bob', 'M', 21)
    (3, 'Lucy', 'F', 20)

    如果使用元组则程序中会大量充斥着下标,影响程序可读性

    >>> stu_tom = (1, 'Tom', 'M', 20)
    >>> stu_bob = (2, 'Bob', 'M', 21)
    >>> stu_lucy = (3, 'Lucy', 'F', 20)
    >>> stu_bob[0]
    2
    >>> stu_tom[1]
    'Tom'
    >>> stu_lucy[2]
    'F'
    

    用命名元组就可以很好的解决这个问题
    namedtuple第一个参数为该命名元组的名字,第二个参数为属性构成的列表

    >>> from collections import namedtuple
    >>> Student = namedtuple('Student', ['no', 'name', 'gender', 'age'])
    >>> stu_tom = Student(1, 'Tom', 'M', 20)
    >>> stu_bob = Student(2, 'Bob', 'M', 21)
    >>> stu_lucy = Student(3, 'Lucy', 'F', 20)
    >>> stu_bill = Student(no=4, name='Bill', gender='M', age=21)
    >>> stu_bill.name
    'Bill'
    >>> stu_lucy.age
    20
    >>> stu_tom.gender
    'M'
    

    相关文章

      网友评论

          本文标题:Python如何为元组命名来提高程序可读性

          本文链接:https://www.haomeiwen.com/subject/xpiskxtx.html