python中的元组

发布时间:2019-08-08 07:58:31编辑:auto阅读(1510)

    创建简单的数据结构 可以使用元组 存储数据  使用圆括号 创建元组

    address = ('北京','上海','天津','广州','重庆')

    即使没有圆括号 python通常也能识别元组

    number = 1,2,34,4,5,6,7,8

    如果你要创建1个数值的元组 需要在后面添加一个,(逗号)

    num  = 1,  # type = tuple
    num  = 1  # type = int
    num  = (1) # type = int
    num  = (1,) # type  = tuple

    和列表一样 也可以使用数字索引提取元素中的值 然而最常用的方法是将元组解包为一组变量

    number = ('阮小七',23,'河北张家口')
    name,age,addr = number #元组解包为一组数据
    print(name);
    print(age);
    print(addr);

    元组操作与列表大部分相同(索引 切片,连接)但是创建元组后不能修改内容(无法替换 删除现有元组中的元素 或者 插入新元素) 说明: 最好把元组看做由多部分组成的对象 而不是可在其中插入或者删除项的不同的集合

    元组修改必须使用切片和连接运算符

    name = ('双枪将董平','没羽箭张青','青面兽杨志')  #不能用insert或者append方法 添加新元素
    name=name[1:]+('急先锋索超',) +name[:1];

     输出结果:

    ('没羽箭张青', '青面兽杨志', '急先锋索超', '双枪将董平')

    在元组中 使用 * 重复运算符 如:

    8*(4,)

     

    输出结果:

    (4,4,4,4,4,4,4,4)

    表示数据时 通常同时使用元组和列表:

    filename = 'E:/work.txt';
    datas = [];
    for line in open(filename):
     fileds = line.split(',');  #将每行划分为一个列表 
     name = fileds[0]; #提取并转换每一个字段
     tokens = int(fileds[1]);
     price  = float(fileds[2]);
     stock = (name,tokens,price);
     datas.append(stock);
    print(datas)

     

    注:此处将work.txt中的数据提取并组成一个元组 放入到了 列表中

    输出结果:

    [("'tom'", 120, 132.0), ("'jon'", 234, 255.0), ("'jeck'", 123, 678.0)]

    如果要访问元组中的数据项 :

    print(datas[1]); #索引
    print(data[2][1]); #切片

     

    输出结果

    ("'jon'", 234, 255.0)
    123

    如果想循环所有记录并将字段进行运算 则:

    for name, tokens, price in datas:
     total += tokens * price;
    print(total);

    输出结果:158904.0

     总结:

    1,创建元组可使用()

    2,创建1个值的元组 可使用:tuple1 = str, 或者 tuple1 = (str,) 

    3,常用的提取值的方式 切片或者索引提取或者将元组解包为一组变量 name ,age,add = date;

    5,元组不可以使用常规方法被修改或者添加项  但是可以使用切片运算符和连接用算符进行此操作

    6,*在元组中可以作为重复运算符

    7,同时使用元组和列表的用法

关键字

上一篇: setdefaultencoding p

下一篇: python类介绍