python list和tuple区别

来源:互联网 发布:从编程小白到全栈开发 编辑:程序博客网 时间:2024/05/21 15:47
#只创建一个tuple  需要加,消除歧义a_tuple=(2,)#在tuple中创建listmixed_tuple=(1,2,['a','b'])print("mixed_tuple"+str(mixed_tuple))#如果在tuple中嵌套list tuple中的list是可以被更改的 mixed_tuple[2][0]='c'print(mixed_tuple)#tuple是一个不可以改变的list 一旦创建 一个tuple 就不能以任何的方式改变它#tuple 与list 的相同之处#定义 tuple 与定义list的方式相同,除了整个元素集用小括号包围的而不是方括号#tuple的元素与list一样按定义的次序进行排序 tuple的索引与list一样从0开始,所以#一个非空的tuple的一个元素总是t[0]#负数索引与list一样从tuple的尾部开始计数#与list一样分片(slice)也可以使用 .注意当分割一个list时,会得到一个新的list;当分割#所以当分割一个tuple时,会得到一个新的tuple##tuple不存在的方法# 不能从一个tuple增加元素。所以没有append 和extend方法#不能用tuple删除元素,所以没有remove和pop方法 #然而可以使用in 来查看一个元素是否存在tuple中###用tuple的好处#tuple比list操作速度快.如果定义了一个值的常量集,并且唯一要用它做的是不断地遍历#则用tuple代替list#如果对不需要修改的数据进行"写保护",它可以使代码更安全.使用tuple而不是list如同拥有一个#隐含的assert语句,说明这一数据是常量.如果必须要修改这些值.可以把tuple转换list#的转换#tuple与list的转换#tuple可以转换成list,反之亦然.内置的tuple函数接受一个list,并返回一个有着相同元素的tuple.而list函数#接收一个tuple返回一个list.从效果上看,tuple冻结一个list,而list解冻一个tuple##tuple的其他应用#一次赋多值#>>>v=('a','b','e'))#>>>(x,y,z)=v#解释:v是一个三元素的tuple并且(x,y,z)是一个三变量的tuple.将一个tuple赋值给另一个tuple会按顺序将v的每一#个值赋给每一个变量
0 0
原创粉丝点击