![Python 3.6从入门到精通(视频教学版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/593/26793593/b_26793593.jpg)
3.2 元组的基本操作
与列表相比,元组对象不能修改,同时元组使用小括号、列表使用方括号。元组创建很简单,只需要在括号中添加元素并使用逗号隔开即可。
3.2.1 元组对象的常用操作
上一章已经讲过创建元组的方法,这里继续学习元组的常用操作方法。
1. 创建只有一个元素的元组
如果创建的元组对象只有一个元素,就必须在元素之后加上逗号(,),否则Python会认为此元素是要设置给变量的值。
>>>a = (100,) >>>a >>>a = (100) >>>a
运行结果如图3-29所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P71_57107.jpg?sign=1739530804-0JzUBnQbkW56mjHseYhoJfLTgATJf2gh-0-0d15c1f9faf88fe1a755121bbd05d89f)
图3-29 运行结果
2. 元组的对象值不能修改
在元组中,不可以修改元组对象内的元素值,否则会提示错误。
>>>aa = (100, 200,300,400) #以下修改元组元素操作是非法的。 >>>aa[1] = 500
运行结果如图3-30所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P72_57138.jpg?sign=1739530804-cWNGJqtrA4hvy6gqWkJERJoG3KUTeXrD-0-c1b4212d18a41c06a1a3c00693e05b09)
图3-30 运行结果
3. 删除元组内的对象
虽然元组内的元素值不能修改,但是可以删除,从而达到更新元组对象的效果。
例如,在下面的示例中删除元组中的a[1]:
>>>a = (100,200,300,400) >>>a = a[0],a[2],a[3] >>>a
运行结果如图3-31所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P72_57161.jpg?sign=1739530804-Wrd5xdb5uFJfQvjGUoQUtdRyk9BmspuW-0-93878860d8678b7095cd9d223c667dc2)
图3-31 运行结果
4. 获取元组对象的元素值
元组对象支持使用索引值的方式来返回元素值。
>>>a = (100,200,300,400) >>>a[0] >>>a[1] >>>a[2] >>>a[3]
运行结果如图3-32所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P73_57207.jpg?sign=1739530804-4GPP2TEGBErTq6bKAN1JX7d9QZAG4aiW-0-6084ec819a43605e51f2323966701681)
图3-32 运行结果
5. 组合元组
虽然元组的元素值不能修改,但是可以组合。例如,组合元组aa和元组bb为新元组cc:
>>>aa = (100,200) >>>bb = ('河汉清且浅', '相去复几许') # 组合成一个新的元组cc >>>cc = aa + bb >>>cc
运行结果如图3-33所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P73_106159.jpg?sign=1739530804-9RxCyh88odnvLijNUesR8FxTyULohw94-0-3b91e28136993db6b582fee391075eb2)
图3-33 运行结果
6. 删除整个元组
使用del语句可以删除整个元组。例如:
>>>aa = (100,200, 300,400) #定义新元组aa >>>aa #输出元组aa >>>del aa #删除元组aa >>>aa #再次输出元组aa时将报错
运行结果如图3-34所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P74_57280.jpg?sign=1739530804-OdogeojczgRQzWxkBf2O3KYcQ9HGSJrE-0-b4e43b3e40ea9a04980c7529cf062aae)
图3-34 运行结果
从报错信息可以看出,元组已经被删除,再次访问该元组时会提示错误信息。
3.2.2 元组的内置函数
元组的内置函数包括len()、max()、min()和tuple()。下面将分别讲述这几个内置函数的使用方法。
1. len()函数
len()函数返回元组的长度。例如:
>>>la = (100,200,300,400,500,600,700,800,900) >>>len(la)
运行结果如图3-35所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P74_57299.jpg?sign=1739530804-twCSDh2eWnbAvfJnuPCgtbAKFzEA56SU-0-f9b05922f0d5d3219ac6c356c381ed57)
图3-35 运行结果
2. max()函数
max()函数返回元组或列表元素中的最大值。例如:
>>>aa=(100,200,300,400,500,600,700,800,900) >>>max(aa) >>>bb=['a', 'c', 'd', 'e', 'f', 'g', 'h', 'o', 'p'] >>>max(bb)
运行结果如图3-36所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P75_57338.jpg?sign=1739530804-3gAgvVHhTDeebI24P7XBG4ybnmKnmanp-0-bcb361b8ee76e81627f2bae495640dab)
图3-36 运行结果
注意 元组中的元素数据类型必须一致才能使用max()函数,否则会出错。
3. min()函数
min()函数返回元组或列表元素中的最小值。例如:
>>>aa=(100,200,300,400,500,600,700,800,900) >>>min(aa) >>>bb=['a', 'c', 'd', 'e', 'f', 'g', 'h', 'o', 'p'] >>>min(bb)
运行结果如图3-37所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P75_57368.jpg?sign=1739530804-qO6rN1Ba5QGA6LEa0ogbR3GFUf9L7Z9O-0-0867044703146808282153d481ec840d)
图3-37 运行结果
注意 元组中的元素数据类型必须一致才能使用min()函数,否则会出错。
4. sum()函数
sum()函数返回元组中所有元素的和。
>>>aa=(100,200,300,400,500,600,700,800,900) >>>sum(aa)
运行结果如图3-38所示。
![](https://epubservercos.yuewen.com/1492BD/15253385804109006/epubprivate/OEBPS/Images/Figure-P76_57396.jpg?sign=1739530804-cVWPjGkHhe5oE4FviZ3x0p2Fdb0Zve3S-0-d811138eaaadc76c239dca77e671780f)
图3-38 运行结果