Python元组

元组

元组:
是一个有序,可重复的,不可更改的对象;
特点:
	1.与list类似;
	2.不可变类型数据;
	3.元组使用的是()
元组的基本使用格式:
(元素1,元素2,...,元素n)

基本描述:

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

1.元组的创建

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

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

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

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

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

>>>tl = (1, "hunan", ['h', 'u', 'n', 'a', 'n'], ('I', 'love', 'python'), {"name": "Tom", "age": 18})

2.元组的基本操作

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

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

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

注意到tl里有个列表,那么这个列表的元素是否可以更改:

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

拼接

>>> t1 = ('a','b','c')
>>> t2 = ('d','e','f')
>>> t1 + t2
('a', 'b', 'c', 'd', 'e', 'f')
>>>

重复

>>> t1 * 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'
>>>
元组的遍历

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++
>>>

print(index + values)

二维数组
>>> tp = ((1,2,3),(4,5,6),(7,8,9))
>>> tp[1][1]
5
三维数组
>>> tp = (((1,2,3),(4,5,6),(7,8,9)),
...     ((1,2,3),(4,"Hunan",6),(7,8,9)),
... ((1,2,3),(4,5,6),(7,8,9)))
>>> tp[1][1][1]
'Hunan'
>>>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值