当前位置:   article > 正文

python内置的有序集合,list元素可变,tuple不可变_有序可变的元素系列

有序可变的元素系列

list列表元素可变方法

append(' *')后面附加元素;

insert(index,‘’)某个位置index添加个元素

pop()删除末尾元素

pop(index)删除指定位置index元素

tuple元组不可变

没有append(),insert()这样的方法

最后来看一个“可变的”tuple:

  1. >>> t = ('a', 'b', ['A', 'B'])
  2. >>> t[2][0] = 'X'
  3. >>> t[2][1] = 'Y'
  4. >>> t
  5. ('a', 'b', ['X', 'Y'])

这个tuple定义的时候有3个元素,分别是'a''b'和一个list。不是说tuple一旦定义后就不可变了吗?怎么后来又变了?

别急,我们先看看定义的时候tuple包含的3个元素:

tuple-0

当我们把list的元素'A''B'修改为'X''Y'后,tuple变为:

tuple-1

表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!

理解了“指向不变”后,要创建一个内容也不变的tuple怎么做?那就必须保证tuple的每一个元素本身也不能变。

小结

list和tuple是Python内置的有序集合,一个可变,一个不可变。根据需要来选择使用它们。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/305688
推荐阅读
相关标签
  

闽ICP备14008679号