Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
>>> aTuple = ('et',77,99.9)
>>> aTuple
('et',77,99.9)
元组也是一个容器类型,可以存储多个数据,只不过元组里面的数据不能修改,好比是一个只读的列表。
定义:(数据1,数据2,…)
元组的类型:tuple
<1>访问元组
my_tuple=(1,3.14,'hello',[1,2,3],True)
print(my_tuple,type(my_tuple)) #
错误的演示:
my_tuple[0]=1 # 报错
del my_tuple #报错
以上两个错误的演示,元组一旦定义完成,元组中的数据就不能修改。
python中有下标和切片,下标有正有负。正的从0开始,负的从-1开始。元组可以使用下标和切片。
my_tuple[0]
my_tuple[-1]
my_tuple[1,-1]
元组中只有一个数据,那么元组中的逗号不能省略。
my_tuple=('hello')
print(my_tuple,type(my_tuple)) # str类型
<2>元组不能删除和修改
说明: python中不允许修改元组的数据,包括不能删除其中的元素。
<3>count, index
index和count与字符串和列表中的用法相同
>>> a = ('a', 'b', 'c', 'a', 'b')
>>> a.index('a', 1, 3) # 注意是左闭右开区间
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: tuple.index(x): x not in tuple
>>> a.index('a', 1, 4)
3
>>> a.count('b')
2
>>> a.count('d')
0
<4>元组的应用场景
1、字符串格式化输出的时候,使用到了元组
age=18
name="wangyue"
print("名字:%s, 年龄:%s" % (name,age)) #(name,age)就是元组
2、函数的返回值可以使用元组,这样外界可以使用函数的返回值,但是不能进行修改,更安全。
<4>元组的遍历
for循环遍历\while循环遍历
1、for循环遍历
name_tuple=("张","王","李","赵")
for name in name_tuple:
print(name)
2、while循环遍历
获取元组的长度
name_tuple=("张","王","李","赵")
result=len(name_tuple)
print("元组的长度",result)
while index <len(name_tuple):
value=name_tuple[index]
print(value)
index+=1
遍历字符串、元组、列表之类的最好都用for循环,因为写起来简单一些。