可变与不可变
列表(list)是一个可变容器,可变与不可变是一对很微妙的概念,因为网上经常出现,所以再重点总结下。
创建一个列表 a = [1,3,[5,7],9,11,13],存储示意图:
执行后删除最后一个元素:
删除后:
再在索引3处增加一个元素8,,插入后如下:
因此,对列表而言,它能增加或删除元素,所以它是可变的。
但是,如果仅仅在列表a中做这一步操作:
插入后可视化图:
对于“可变”这个概念而言,这就不是真正让a可变的操作。
就是一个典型的不可变容器对象,对它而言,同样也可以修改嵌套对象的取值,但这并没有真正改变tuple内的元素。
如下所示,有一个元祖a
a的存储示意图如下:
下面插入一个元素6:
可以看到,a内元素没增没减,长度还是6
不可变容器对象的本质:一旦创建后,。但是,对于list而言,长度会有增有减,所以它是可变的。
领取专属 10元无门槛券
私享最新 技术干货