python内置容器之元组

来源:互联网 发布:超星网络选修课怎么刷 编辑:程序博客网 时间:2024/05/01 15:13

    元组作为python另一种内置的基本数据类型,与列表List有很多相似之处。元组的形式是用括号括起,元素之间逗号分隔,如( a, b, c, f )。不过元组创建之后不能直接修改(这里后面详细讲解)。

    1、创建元组:

        tuple1=(1,2,3,4,5,6)

        tuple2=()  //创建空元组

        tuple3=2,3,4,5,6  //这种没有显示使用括号,默认就是tuple类型

        tuple4=(1,)    //像这种只有一个元素的,为了消除歧义,后面显示加一个逗号

    元组的访问与列表类似,都是有一个索引,通过索引访问,也含有切片特性。

    2、访问元组中的元素:

        a = tuple1[1]    //获取元组中索引为1即第二个元素的值,即2

    3、遍历元组:

        for key in tuple1:

    4、切片:

        tuple1[2:5]  //返回元组索引2到索引5之间的元素(含2不含5,以下类似)

        tuple1[-2]  //返回倒数第二个元素

        tuple1[:5]  //返回从头开始到第五个元素(不含索引5)

        tuple1[2:]  //返回索引2开始一直到结束的元素

    5、删除元组:

        元组单个元素是不允许删除的,我们只能删除整个元组。

        del tuple3

    6、其他:

        cmp(tuple1, tuple2)   //比较两个元组元素。
        len(tuple)    //计算元组元素个数。
        max(tuple)    //返回元组中元素最大值。
        min(tuple)    //返回元组中元素最小值。
        tuple(seq)    //将列表转换为元组。

    7、关于元组元素不能修改:

        这里说的元组元素不能修改是指我们定义了一个tuple1=(a,c,v,f)后不能通过索引直接修改元组的元素,比如我们不能这样操作:tuple[2]=12。

        但是,如果我们的元组元素是一个list类型的,比如tupletest=(1,2,[3,4]),这时,我们可以这样操作,tupletest[2][1] = 5,这样tupletest就变成了(1,2,[3,5])。这看起来跟元组不能修改矛盾,其实并不矛盾。这里修改的其实是list而非tuple。tupletest中第三个元素依然是指向的原来的list,并没有指向新的list。

0 0
原创粉丝点击