元组拆包\具名元祖

#元组拆包
    基本使用: 平行赋值,即把一个可迭代对象里面的元素,一并赋值给由对应的变量组成的元组中。
    使用范围:可迭代对象。
    示例:
        1、a,b,c,*s = range(10) #s=[3, 4, 5, 6, 7, 8, 9] a = 1,b=2,3=3
            *s表示出去明确指定的变量赋值之外的其他值全部由*修饰的变量来接受
        2、a = max(*range(10))#9
                *表示将元组拆包后元素作为函数的参数值
#嵌套元祖拆包:
    示例:
        1、a,v,x,(m,*n) = (1,2,3,(4,5,6))
                a=1,
                v=2,
                x=3,
                m = 4,
                n = [5,6]
        2、a,*x,(m,*n) = (1,2,3,(4,5,6))
                a= 1,
                x=[2,3],
                m=4,
                n=[5,6],

#具名元组:一个有名字的元组,使用collections模块中的namedtuple函数定义
    基本使用: 
            导入:from collections import namedtuple
             变量名= namedtuple(类名,[字段名称用于有效访问元组元素])
            定义: Card = namedtuple("Card",["city","address"])
            创建元组对象:c = Card("北京","建国门")
            访问元组元素: c.city  北京   c.address  建国门

#使用
    元组拆包与具名元组的使用:
        a=["name","age","sex"]
        Info = namedtuple("Info",[*a])
        information  = Info("lily","23","girl")
        information.name   #lily
        information.age  #23
        information.sex #girl

猜你喜欢

转载自blog.51cto.com/11089980/2357866