有些时候我们的列表数据不想被人修改时怎么办? 就可以用元组存放,元组又被称为只读列表,不能修改。
定义:与列表类似,只不过[]改成()
特性:
1.可存放多个值
2.不可变
3.按照从左到右的顺序定义元组元素,下标从0开始顺序访问,有序
创建
ages = (11, 22, 33, 44, 55)
#或
ages = tuple((11, 22, 33, 44, 55))
常用操作
#索引
ages = (11, 22, 33, 44, 55)
ages[0]
11ages[3]
44ages[-1]
55
#切片:同list
#循环
for age in ages:
print(age)
11
22
33
44
55
#长度
len(ages)
5
#包含
11 in ages
True66 in ages
False11 not in ages
False
注意:元组本身不可变,如果元组中还包含其他可变元素,这些可变元素可以改变
data
(99, 88, 77, [‘Alex’, ‘Jack’], 33)data[3][0] = ‘金角大王’
data
(99, 88, 77, [‘金角大王’, ‘Jack’], 33)
为啥呢? 因为元组只是存每个元素的内存地址,上面[‘金角大王’, ‘Jack’]这个列表本身的内存地址存在元组里确实不可变,但是这个列表包含的元素的内存地址是存在另外一块空间里的,是可变的。