![Python编程基础与应用](https://wfqqreader-1252317822.image.myqcloud.com/cover/854/41309854/b_41309854.jpg)
上QQ阅读APP看书,第一时间看更新
2.3.2 元组的基本操作与方法
1.通用操作
作为序列的一员,元组可使用“+”和“*”等操作符,其中“+”用于组合元组,“*”用于重复元组。对元组操作的函数基本是可以参照表2-1所示的函数,有len()、in()等。
【例2-28】 元组操作符、函数在表达式或语句中的使用。
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/63_01.jpg?sign=1738870936-ZBqbFi96QdlCxVRTRnUe9NjGouKJ4zvU-0-9e17336e56c969438e88a08560e692d0)
运算结果:
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/63_02.jpg?sign=1738870936-4hwpGux9MqkuZXVtDLq2Pq8HoeUvQ52x-0-c401666760a46999ecad71f406ecf256)
2.访问元组元素
和列表一样,可以使用索引(index)访问元组中的某个元素(得到的是一个元素的值),也可以使用切片访问元组中的一组元素(得到的是一个新的子元组)。
使用索引访问元组元素的格式为:
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/63_03.jpg?sign=1738870936-o1giHshzLY2C8wApu4kTkIZGzFsTqCrd-0-733b2785de156fc0e9ec280adeaca67a)
其中,tuplename表示元组名字,i表示索引值。元组的索引可以是正数,也可以是负数。
使用切片访问元组元素的格式为:
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/63_04.jpg?sign=1738870936-9px3kkG1M85TOaNlwFh9TGZB7B0qT48k-0-0a747475e42af26223a6fbf3af99be47)
其中,start表示起始索引,end表示结束索引,step表示步长。
【例2-29】 访问元组中的某个元素或某组元素。
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/63_05.jpg?sign=1738870936-BUe8WUDYrc6A8Xw9S9tULfAlCc79W7RN-0-a6482b04142899fb4043fcb81928954f)
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/64_01.jpg?sign=1738870936-dXN3vZ77f5V9TzHYMGGirvcJr8cLefPg-0-0aacf906e4e9cabe46e77cc835ea2f11)
运算结果:
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/64_02.jpg?sign=1738870936-oQYuNns5xuFjF0ZnLTr4YgKn4sfkiwAS-0-90e28f799da07131203951109a9b45d7)
3.修改元组
元组是不可变序列,其中的元素不能修改,如果要修改,只能给元组重新赋值,替代旧的元组。
【例2-30】 对元组变量进行重新赋值。
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/64_03.jpg?sign=1738870936-TgF9PzaoW5LNOzPwp3aav32rng9QoT0E-0-59784063cd3205dbec938c958a7f4492)
运算结果:
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/64_04.jpg?sign=1738870936-2jdrQ9KB20uWbj6WF4GxiJh35gVbk3EZ-0-f2bb4893bdfd5f0738927c0ec2c271a0)
【例2-31】 连接多个元组(使用“+”)。
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/64_05.jpg?sign=1738870936-Ez0wOLKhNqVB7ATPSAGR3ntDUGBgS3FQ-0-840c5aad18f946fc6466e46b0db8831f)
运算结果:
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/64_06.jpg?sign=1738870936-US7IIMQv1OxQ9NzblPf0Fawnn4sKeQUk-0-ceae14097be4452ad00420ffdd48a318)
4.删除元组
当创建的元组不再使用时,可以用del关键字将其删除。
【例2-32】 删除元组。
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/65_01.jpg?sign=1738870936-mXPTekUkQlDauRMRAOdO7VRKEQuTFCAC-0-98550ba790ed139baccbe21ffb864dba)
运算结果:
![](https://epubservercos.yuewen.com/F38A38/21511156801516706/epubprivate/OEBPS/Images/65_02.jpg?sign=1738870936-F7YPQJO1yxKRPIRrm5Dey97cowXqyxYP-0-54357837ce8db981c23162300c42642b)
Python自带垃圾回收功能,会自动销毁不用的元组,所以一般不需要通过del来手动删除。
5.其他操作与方法
除了以上操作与方法外,Python元组还包含了以下内置函数。
1)cmp(tuple1, tuple2):比较两个元组元素。
2)len(tuple):计算元组元素个数。
3)max(tuple):返回元组中元素最大值。
4)min(tuple):返回元组中元素最小值。
5)tuple(seq):将列表转换为元组。