在Python不可变数据类型中,有一个比较重要的角色那就是元组( tuple )。如果某个对像被定义为元组类型,那么就意味着它的值不能被修改,除非重新定义一个新的对像。元组和List列表常被放在一起进行比较,它们都是序列,所以有许多相同的操作方法,但前者是不可变数据类型,后者是可变数据类型,从本质上又并不相同.
内存结构
如何创建元组tuple
1、创建元组方法很简单,元组是用小括号( )包括起来的,( )括号中的元素用逗号分割,这样就完成元组的创建了。
>>>(1,2,3)
(1,2,3)
如果新建时没有用( )括号包括,只用逗号进行分隔python也会把它认做为元组
>>>1,2,3
(1,2,3)
如果你新建的元组中只有一个值,那么请记得在这个值后边加上逗号
>>>1,
(1,)
如果没有逗号,python只当把它当做整型来处理。
>>>1
1
2、还有一种有趣的元组创建方法,需要用到tuple函数的功能:它可以一个列表为参数,把它转换为元组。
tuple([1,2,3,4])
>>>(1,2,3,4)
tuple('hello')
>>>('h','e','l','l','o')
用了字符串为参数,结果是把字符串'hello'中的每一个字母,都做为一个新的元素添加到新元组中。
如何读取元组中的数据、值
元组是一个有序的集合,和列表一样可以通过偏移来数据。简单的说,元组支持索引和切片操作。
索引(下标)和切片取值:
x = (0,1,2,3)
x[1] 索引下标
x[2:4] 切片取值 不包含四
如何修改元组的操作方法
元组a = (2,3,3) 要把它变成(3,3,3)
list(a) 把元组转换成列表a =[2,3,3]
a[0]=3 更改元组转变成列表的第一个值
tuple(a)
1、首先引用list( )方法中传入变量a的值,并赋值给变量b,得到列表b = [2,3,3]
2、取列表变量b的第0位的值,并修改为3,此时变量b = [3,3,3]
3、最后用tupel( )方法中传入变量b的值,重新赋值给变量a,此时a = (3,3,3)
如果元组内包含的元素中,有可变数据类型,修改起来就十分方便
变量名为X的元组,第0位下标对应的是一个列表,因为列表是可变数据类型,所以可以直接进行修改
1、元组是一个有序的集合,
2、元组和列表一样可以使用索引、切片来取值。
3、创建元组后不能在原地进行修改替换等操作。
4、元组支持嵌套,可以包含列表、字典和不同元组。
5、元组支持一般序列的操作,例如:+、*
>>>(1,2)+(3,4)
(1,2,3,4)
>>>(7,8)*4
(7,8,7,8,7,8,7,8)
注意+、*操作时,返回的是一个新元组