元组是什么:既能像列表那样同时容纳多种类型的对象也拥有字符串不可变的特性
列表-[元素1,元素2,元素3]
元组-(元素1,元素2,元素3)
元组也可以通过下表来获取元素
rhyme = (1,2,3,4,5,"哈哈")
ryhme[:3]
(1,2,3)
ryhme[3:]
(4,5,"哈哈")
rhyme[:]
(1,2,3,4,5,"哈哈")
rhyme[::2]
(1,3,5)
rhyme[::-1]
(哈哈5,4,3,2,1)
(注:不是原地进行一个翻转,而是进行切片操作之后导出的一个新的对象)
元组只支持count和index方法
例子:
nums = (2,5,8,9,6,2,4,2,2)
nums.count(2) (意思是上面的元素有几个2)
4 (有4个2)
heros = ("蜘蛛侠","绿巨人","黑寡妇")
heros.index("黑寡妇") (查看黑寡妇的下表索引值)
2 (下表索引值为2)
元组同样支持迭代
例子:
for each in s:
print(each)
1
2
3
嵌套循环
s = (1,2,3)
t = (4,5,6)
for i in w:
for each in i:
print(each)
1
2
3
4
5
6
问题:生成只有一个元素的元组
例子:
x = (520)
x
(520)
type(x)
<class 'tuple'>
打包和解包
生成一个元组我们有时候也成为元组的打包
打包:t = (1,2,3,",FishC",3.14)
t
(1,2,3,"FishC",3.14)
解包:x,y,z = t
x
123
y
"FishC"
z
3.14
元组中的元素虽然是不可变的但如果元组中的元素是指向一个可变的列表,那么我们依然是可以修改列表里面的内容的