1. 元组的创建
元组(Tuple)与列表(List)类似,不同之处在于元组的元素是不可以修改的,当然由于元组的不可变性因此也不能进行排序等操作。元组可以由数值类型、布尔值、空值、字符串和列表等构成元组。
# 元组的不可变性
tup = ('a','b','c')
tup[1] = '改变'
print(tup)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-56-493da6be5b3d> in <module>()
1 # 元组的不可变性
2 tup = ('a','b','c')
----> 3 tup[1] = '改变'
4 print(tup)
TypeError: 'tuple' object does not support item assignment
# 创建空元组
a = ()
print(type(a))
<class 'tuple'>
# 当元组只有一个元素时需要在末尾加一个逗号,
# 否则会解析为括号的运算方法
a = (3)
print(type(a))
a = (3,)
print(type(a))
<class 'int'>
<class 'tuple'>
# 多个元素的元组创建
# 可以不用加括号
a = 1,2
print(type(a))
b = (1,2)
print(type(b))
<class 'tuple'>
<class 'tuple'>
# 多种类型元素的元组
a = ('a',1.2,None,True,[1,2])
print(type(a))
<class 'tuple'>
嵌套元组
a = (1,2,('a','c',3,[1,2]),'a')
type(a)
tuple
range()对象生成元组
a = tuple(range(1,9,2))
print(a,type(a))
(1, 3, 5, 7) <class 'tuple'>
列表转元组方法
lst = ['a','s',True]
a = tuple(lst)
print(a,type(a))
('a', 's', True) <class 'tuple'>
a = ('a', 's', True)
# 当然元组也可以转为列表
b = list(a)
print(b,type(b))
['a', 's', True] <class 'list'>
2. 元组的连接与复制
元组的连接,与列表类似,通过+连接
a = (1,2)
b = (3,4)
a+b
(1, 2, 3, 4)
元组的复制,与列表类似,通过* 复制
a = ('a',)
a * 4
('a', 'a', 'a', 'a')
3. 元组的索引与切片
索引与切片,与列表的操作类似
a = 'a',2,4,(2,3),[3,4],'b'
print(a,type(a))
# 索引
print('第一个元素:',a[0])
print('最后一个元素:',a[-1])
# 切片
print(a[:2])
print(a[:5:2]) # 设置步长切片
('a', 2, 4, (2, 3), [3, 4], 'b') <class 'tuple'>
第一个元素: a
最后一个元素: b
('a', 2)
('a', 4, [3, 4])
4. 元组的常用操作
查询元组的长度
tup = (1,2,'a',True,None,[1,2,3])
len(tup)
6
获取纯数值元组的最大值、最小值和总和
扫描二维码关注公众号,回复: 11184872 查看本文章
a = tuple(range(1,11))
print('最大值为:',max(a))
print('最小值为:',min(a))
print('总 和为:',sum(a))
最大值为: 10
最小值为: 1
总 和为: 55
查询索引值
tup.index('a')
2
统计元组的元素出现的次数
tup.count(1)
2
删除元组(只能删除整个元组,不能删除具体的元素)
del tup
tup
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-72-cbde4a271b58> in <module>()
1 del tup
----> 2 tup
NameError: name 'tup' is not defined
for遍历元组
tup = (1,2,'a',True,None,[1,2,3])
for i in tup:
print(i)
1
2
a
True
None
[1, 2, 3]
判断某个元素是否在元组中
tup = (1,2,'a',True,None,[1,2,3])
None in tup
True