day3_元组
元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
一、创建元组
1、普通创建
实例1:
>>> tupl1 = ('abc',123,'ddd')
>>> type(tupl1) #查看类型
<class 'tuple'>
>>> tupl1
('abc', 123, 'ddd')输出:
<class 'tuple'>
('abc', 12, 'sdjf', 888)
实例2:
>>> tupl2='a','b','c' #不加括号也可以
>>> type(tupl2)
<class 'tuple'>
>>> print(tupl2)
('a', 'b', 'c')
2、创建空元组
>>> tupl = ()
>>> tupl
()
3、元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用:
>>> tup1 = (1) #不加逗号,类型为整形
>>> type(tup1)
<class 'int'>
>>> tupl2 = (1,) #加逗号,类型为元组
>>> type(tupl2)
<class 'tuple'>
二、访问元组
可以使用下标索引进行访问
实例1:
tupl1 = ('abc',12,'sdjf',888)
print(tupl1[1])
输出:
12
实例2:
tupl1 = ('abc',12,'sdjf',888)
print(tupl1[1::2])
输出:
(12, 888)
三、修改元组
元组不能修改,但是可以对元组进行连接组合。
实例:
tupl1 = ('abc',12,'sdjf',888)
tupl2 = (1,2,3)
tupl3 = tupl1 + tupl2 #创建新元组
print(tupl3)
输出:
('abc', 12, 'sdjf', 888, 1, 2, 3)
6、删除元组
元组不允许删除,但是可以用del删除整个元组
实例:
tupl1 = ('abc',12,'sdjf',888)
print('删除前元组:',tupl1)
del tupl1 #整个这个变量都删除了
print('删除后元组:',tupl1)
输出:
删除前元组: ('abc', 12, 'sdjf', 888)
Traceback (most recent call last):
File "test.py", line 4, in <module>
print('删除后元组:',tupl1)
NameError: name 'tupl1' is not defined
四、元组函数用法
1、count()
用于统计某个元素在元祖中出现的次数。
语法:
tupl.count(obj)
参数:
obj -- 元祖中统计的对象。
实例:
tupl = ('abc',12,'sdjf',888,12)
print(tupl.count(12))
输出:
2
2、index()
用于从元祖中找出某个对象第一个匹配项的索引位置,如果这个对象不在元祖中会报一个异常。
语法:
tupl.index(obj[,start
=0[,end=len(tupl)]])
参数:
obj -- 指定检索的对象。
start -- 可选参数,开始索引,默认为0。(可单独指定)
end -- 可选参数,结束索引,默认为元祖的长度。(不能单独指定)
实例1:
tupl = ('abc',12,'sdjf',888,12,888)
print(tupl.index(12))
输出:
1
实例2:
tupl = ('abc',12,'sdjf',888,12,888)
print(tupl.index(12,3,len(tupl))) #从第三个索引开始查找
输出:
4
3、tuple()
用于将可迭代对象(字符串、列表、元祖、字典)转换为元组。
实例1:列表转元组
list = [1,2,3,4]
print(tuple(list)) #将列表转为元组
输出:
(1, 2, 3, 4)
实例2:字典转元组
a = {1:'a',2:'b'}
print(tuple(a)) #将字典转成元组,返回字典中key值组成元组
输出:
(1, 2)
实例3:元组转元组
a = ('a','b','c')
print(tuple(a)) #元组返回元组本身
输出:
('a', 'b', 'c')
4、max()
返回元组中元素最大值。
实例:
a = ('a','b','c')
print(max(a)) #返回最大值
输出:
C
5、min()
返回元组中最小值
实例:
a = (2,3,4,24,56,45,0)
print(min(a)) #返最小值
输出:
0