当前位置:   article > 正文

你知道吗?——元组其实是可变的序列!_元组里面的元素可以是列表(可变),会是什么样的情况?(自学)

元组里面的元素可以是列表(可变),会是什么样的情况?(自学)

你知道吗?——元组其实是可变的序列!

大家可能都知道,列表和元组都是序列

而它俩的区别就是列表是可变的序列,元组是不可变的序列

即元组的内容是不可修改的,不允许更新元素、删除元素

但是,你知道吗?

其实,元组其实也是“可变”的

在这里插入图片描述
就让我来介绍介绍元组怎么“可变”

举例:

首先,初始化一个元组

>>>tuple1=('1','2','3',['a','b','c'])
  • 1

再修改元素

>>>tuple1[3][0]='4'
>>>tuple1[3][1]='5'
>>>tuple1[3][2]='6'
  • 1
  • 2
  • 3

更改后的结果:

>>>tuple1
('1', '2', '3', ['4', '5', '6'])
  • 1
  • 2

在这里插入图片描述
上述元祖最开始有四个元素’1’,‘2’,‘3’,[‘a’,‘b’,‘c’],后来通过索引修改元组元素后,元组发生改变。

原理解释:

表面上看,元组的元素确实是改变了

但其实变的并不是元组的元素,而是列表的元素

元组开始指向的列表并没有改变成其他的列表

所以

元组的所谓的“不变”,其实是元组的每个元素的指向不变

指向了‘1’,就不能指向‘2’

指向一个列表,就不能指向其他列表,也不能指向其他类型的对象

上张图看看:

在这里插入图片描述
所以,元组在特别情况下是“可变的”,所谓的“不可变”是指向不变

在这里插入图片描述
希望这篇文章能让大家对元组有一个新的认识

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

闽ICP备14008679号