一,元组

    1.特性:

        a.它是容器类型;

        b.任意对象的有序集合;

        c.通过索引访问其中的元素;

        d.不可变对象;

        e.长度固定;

        f.支持异构和嵌套;

    例如:

In [2]: print t1
(1, 2, 3, 4, 5)
 
In [4]: t1.index(2)              //索引元素
Out[4]:
1
 
In
[5]: t1.index(3)
Out[5]:
2
 
In [6]: t1.count(3)              //元素出现的次数
Out[6]:
1

    2.特殊性

        虽然元组本身不变,如果元组内嵌套了可变类型的对象,那么此类元素的修改不会返回新元组。

        例如:

In [424]: t5=('z',[1,2,3])
 
In [425]: t5
Out[425]: ('z', [1, 2, 3])
 
In [428]: t5[1].pop()
Out[428]: 3
 
In [429]: t5
Out[429]: ('z', [1, 2])
 
In [430]: id(t5)
Out[430]: 47641592
 
In [431]: t5[1].append(6)
 
In [432]: id(t5)
Out[432]: 47641592

二,序列操作总结

    1.序列类型支持的操作符 

操作描述操作描述
s + r连接for x in s:迭代
s * n, n * s制作s的n个副本,n为整数all(s)如果s中的所有项都为True,则返回True
v1, v2, ..., vn = s变量解包(unpack)any(s)如果s中的任意项为True,则返回True
s[i]索引len(s)长度
s[i:j]切片min(s)s中的最小项
s[i:j:stride]扩展切片max(s)s中的最大项
x in s, x not in s从属关系sum(s [, initial])具有可选初始值的项的和

    2.列表类型支持的操作

操作描述操作描述
s[i] = x索引赋值del s[i]删除一个元素
s[i:j] = r 切片赋值del s[i:j]删除一个切片
s[i:j:stride] = r扩展切片赋值del s[i:j:stride]
删除一个扩展切片