元组是python中内置的不可变序列,在python中使用()定义元组,元素与元素之间使用英文的逗号分隔。元组中只有一个元素时,逗号也不能省略。
一、元组的创建与删除
1. 使用()之间创建元组
语法结构:
元组名=(element1,element2,…,elementN)
2. 使用内置函数tuple()创建元组
语法结构:
元组名=tuple(序列)
3.删除元组
del 元组名
示例
#使用()创建元组
t=('hello',[10,20,30],'python','world')
print(t)
#使用内置函数tuple()创建元组
t=tuple('helloworld')
print(t)
t=tuple([10,20,30,40])
print(t)
#元组也是序列
print('10在元组中是否存在:',(10 in t))
print('10在元组中是否不存在:',(10 not in t))
print('最大值',max(t))
print('最小值',(min(t)))
print('len',len(t))
print('t.index',t.index(10))
print('t.count(10)',t.count(10))
#如果元组中只有一个元素
t=(10)
print(t,type(t))
#如果元组中只有一个元素,逗号不能省
t=(10,)
print(t,type(t))
#元组的删除
del t
print(t)
结果
二、元组元素的访问与遍历
示例
t=('python','hello','world')
#根据索引访问元组
print(t[0])
t2=t[0:3:2] #元组支持切片操作
print(t2)
#元组的遍历
for item in t:
print(item)
#for+range()+len()
for i in range(len(t)):
print(i,t[i])
#使用enumerate()
for index,item in enumerate(t,start=11): #序号从11开始
print(index,'--->',item)
结果
三、元组生成式
示例
t=(i for i in range(1,4))
print(t)
# t=tuple(t)
# print(t) #此时t为元组
#遍历
# for item in t:
# print(item)
#使用next方法遍历时,遍历对象为生成器
#遍历后,元组为空
print(t.__next__())
print(t.__next__())
print(t.__next__())
t=tuple(t)
print(t)
结果
四、元组和列表的区别
元组 | 列表 |
不可变序列 | 可变序列 |
无法实现添加、删除和修改元素等操作 | append()、insert()、remove()、pop()等方法实现添加和删除列表元素 |
支持切片访问元素,不支持修改操作 | 支持切片访问和修改列表中的元素 |
访问和处理速度快 | 访问和处理速度慢 |
可以作为字典的键 | 不能作为字典的键 |