美文网首页Python原教我爱编程
Python奇技淫巧—[2]—使用元组代替字典,同时为元组元素命

Python奇技淫巧—[2]—使用元组代替字典,同时为元组元素命

作者: techLee | 来源:发表于2018-06-21 18:36 被阅读12次

    Python奇淫巧技——使用元组代替字典,同时为元组元素命名,提高可读性

    场景:

    一般使用字典定义一个人的姓名,年龄,性别,邮箱等信息是非常方便的,比如:

    student_one = {'name': 'Tom', 'age': 19, 'sex': 'male', 'email': 'tom123@hotmail.com'}
    

    使用元组表示则为:

    student_one = ('Tom', 19, 'male', 'tom123@hotmail.com')
    

    使用元组替代字典表示信息的时候,一方面很难分别元素的含义,另一方面在取值的时候,需要通过索引(index)来获得,即:

    student_one[0]
    student_one[1]
    student_one[2]
    student_one[3]
    

    当代码量很多的时候,很难分辨索引分别代表的值是什么,因此需要给每个索引命名,来解决难以分辨的问题:

    • 第一种方案:给索引取"别名"
    name = 0
    age = 1
    sex = 2
    email = 3
    # 这样即可通过索引的"别名"来取值
    

    升级:

    # 通过组包来完成
    name, age, sex, email = range(4)
    
    • 第二种方案:使用标准库中的collections.namedtuple来替代内置的tuple
    from collections import namedtuple
    
    student = namedtuple('student', ['name','age','sex','email'])
    
    student_one = student("tom", 16, "male", "tom123@hotmail.com")
    
    print(student_one)
    

    欢迎访问

    个人博客地址:www.limiao.tech


    相关文章

      网友评论

        本文标题:Python奇技淫巧—[2]—使用元组代替字典,同时为元组元素命

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