tuple元组

元组

是一个有序,可重复的,不可更改的对象。
特点:
1.list类似,也是用来存储多个值。
2.不可变类型数据,只能是在定义时初始化,初始化后就无法再修改。
3.元组使用的是()

元组的基本使用格式

(元素1,元素2...,元素n)

基本描述:

元组是用()包裹起来的多个元素的数据类型,每个元素之间用“,”隔开。

1.元组的创建

  • 创建一个空元组
>>> t1=()
>>> type(t1)
<class 'tuple'>
>>>
  • 创建只含有一个元素的元组

    需要注意的地方是:如果我们创建只含有一个元素的元组,我们必须在这仅有的一个元素后加上一个“,”。

>>> t1=(6)
>>> t1,type(t1)
(6, <class 'int'>)
>>>

>>> t1=(6,)   #只有一个元素的元组,必须加上","
>>> t1,type(t1)
((6,), <class 'tuple'>)
>>>
  • 创建含有多个元素的元组
>>> t1=(1,2,3,4,5,6)

和列表一样,元组的元素也可以是不同的数据类型的元素。

2.元组的基本操作

  • 通过索引值查找对用的元素
t1=(1,"hunan",['h','u','n','a','n'],('I','love','python'),{'name':"tom","age":18})
print(t1[4])
#结果:{'name': 'tom', 'age': 18}
print(t1[-1])
#结果:{'name': 'tom', 'age': 18}
print(t1[-2])
#结果:({'name': 'tom', 'age': 18}, ['h', 'u', 'n', 'a', 'n'], 1)
  • 查找元素的索引值
t1=(1,"hunan",['h','u','n','a','n'],("I",'love','python'),{"name":"Tom","age":18})
print(t1.index("hunan"))
#结果:1
print(t1.index("hunan",1,4))
#结果:1

注意:元组是不可变的数据类型:不能够增,删,改。

t1=(1,"hunan",['h','u','n','a','n'],("I",'love','python'),{"name":"Tom","age":18})
print(t1[0]=0)
#Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment#不支持,不能更改
>>>

注意到t1里面有个列表,那么这个列表中的元素是否可以更改?

t1=(1,"hunan",['h','u','n','a','n'],("I",'love','python'),{"name":"Tom","age":18})
print(t1[2])
#结果:['h', 'u', 'n', 'a', 'n']
>>> t1[2][2]='N'
>>> t1
(1, 'hunan', ['h', 'u', 'N', 'a', 'n'], ('I', 'love', 'python'), {'name': 'Tom', 'age': 18})
>>>

拼接:

t1=('a','b','c')
t2=('d','e','f')
print(t1+t2)
#结果:('a', 'b', 'c', 'd', 'e', 'f')

重复:

>>> t=("a","b","c")
>>> t*3
('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c')
>>>

判断元素是否存在

>>> t1=("a","b","c")
>>> "a"in t1
True
>>> "a"not in t1
False
>>>

内置函数(最大值和最小值)

>>> t1=("a","b","c")
>>> max(t1)
'c'
>>> min(t1)
'a'
>>>

元组的遍历

1)值遍历

>>> tp=("python","java","c++")
>>> for i in tp:
...     print(i,end=" ")
#结果:python java c++

2)索引遍历

>>> tp=("python","java","c++")
>>> for i in range(len(tp)):
...     print(tp[i],end=" ")
#结果:python java c++

3)索引值,遍历

枚举(enumerate),对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

>>> tp=("python","java","c++")
>>> for index,value in enumerate(tp):
...     print(index,":",value)
...
# 0 : python
# 1 : java
# 2 : c++

>>> tp=("python","java","c++")
>>> for index,value in enumerate(tp,6):
...     print(index,":",value)
...
6 : python
7 : java
8 : c++
>>>

print(index+value)

二维元组

>>> tp=((1,2,3),(4,5,6),(7,8,9))
>>> tp[1][1]
5
>>>

三维元组

>>> tp=(((1,2,3),(4,5,6),(7,8,9)),)
>>> tp[0][1][1]
5
>>>

猜你喜欢

转载自blog.csdn.net/qq_38059664/article/details/88817856