1. 元组简介
Python的元组与列表类似,也是容器的一种,不同之处在于元组的元素不能修改
- 用于存储 一串 数据,元素之间使用 , 分隔
- 元组的索引从
0
开始 - 元组的类型:tuple
2. 元组的定义
元组用()
定义
注意:一个元素的元组定义需要在元素后加上,names_tuple = ('林青霞','张曼玉','胡慧中')
# 错误定义方式 ❌
names_tuple = ('林青霞')
# 正确定义方式 ✅
names_tuple = ('林青霞',)
3. 元组的特点和作用
元组作为一种高级数据类型,具备如下的特点自动组包
t
的类型是元组类型,这就是元组的自动组包特征t = '林青霞','张曼玉','王祖贤'
自动解包
元组# 定义元组
t = ('林青霞','张曼玉','王祖贤')
# 变量赋值
name1,name2,name3 = t
t
会自动解包分别赋值给name1
、name2
、name3
三个变量
注意:左边变量的个数一定要和元组的元素个数保持一致交换数据
交换数据在其它语言中的实现如下:
可以利用元组的组包和解包特点,,速交换两个数据a = 10
b = 20
# 交换a和b
tmp = a
a = b
b = tmp
上述交换,首先右边会进行自动组包,组成新的元组a = 10
b = 20
# 交换a和b
a,b = b,a
(20,10)
左边会把元组解包,元素分别赋值给a
和b
,最终实现交换的功能让列表不可修改
有时我们传递列表数据给别人使用,希望别人不要修改列表
可以把列表转换成元组,这样就变成了不可变的数据 ```python lst = [10, 20, 30]将列表转换成元组
tp = tuple(lst)
不可执行如下类似操作
tp[0] = 111
tp.append(222)
``
如果运行执行会报出如下错误:
TypeError: ‘tuple’ object does not support item assignment`