day11-元祖的魔法

列表是有序的,元素可以被修改
列表 list
li =  [111,222,33,44]

元祖,元素不可被修改,不能被增加或者删除(备注:元祖的一级元素不可修改、删除、增加,但是可以修改里面列表的元素,如下所示)
tuple
tu = (111,"alex",(11,22),[33,44],True,33,44)  书写格式就是加括号
一般写元祖的时候,推荐在最后括号内加入“,”这样的话可以来明显的区分元素和列表或者其他成分
元祖中的元素不可被修改,不可被增加或者删除
1、元祖可以用来索引
tu = (111,"alex",(11,22),[33,44],True,33,44)
v = tu[0]
print(v)  得到结果 111
2、元祖可以用来切片
v = tu[0:2]
print(v)  得到结果 (111, 'alex')
3、元祖可以被for 循环 ,可迭代对象
tu = (111,"alex",(11,22),[33,44],True,33,44)
for item in tu:
    print(item)
 得到结果
111
alex
(11, 22)
[33, 44]
True
33
44
4、字符串为可迭代对象
s = "shudsjcfhvgbv"
列表可迭代对象
li = ["alens",1231]
元祖未知tu = (123,123,"alex")

v = tuple(s)   .......表示将字符串转换为元祖
s = "shudsjcfhvgbv"
v = tuple(s)
print(v)  输出后得到结果:('s', 'h', 'u', 'd', 's', 'j', 'c', 'f', 'h', 'v', 'g', 'b', 'v')
所以我们可以看出字符串可以转换为元祖
同样的方法 我们可以将列表也转换为元祖

tu = (123,123,"eakx")
v = list(tu)
print(v)   输出得到 [123, 123, 'eakx']  这样的方法 也可以将元祖转换为列表

从上看出 元祖 也是一个可迭代对象 也可以转换
元祖是有序的
比如我想取tu = (111,"alex",(11,22),[33,44],True,33,44)里面的33
tu = (111,"alex",(11,22),[33,44],True,33,44)
 v = tu[3][0]
print(v)  输出后得到结果 33


元祖的一级元素不可修改、删除、增加,但是可以修改里面列表的元素,如下所示
tu = (111,"alex",(11,22),[33,44],True,33,44)
tu[3][0] = 567     。。。。如何此时我们如果修改成tu[3] = 567 就不行 因为这样指的就是一级元素了
tu[3][1] = 567
print(tu)  输出得到结果 (111, 'alex', (11, 22), [567, 567], True, 33, 44)


tuple 通过Ctrl 我们知道其有以下功能
1,count,获取置顶元素在元祖中出现的次数
tu = (111,"alex",(11,22),[33,44],True,33,44)
v = tu.count(33)
print(v)   输出结果得到1

2,index  通过 tu.index()来实现
tu = (111,"alex",(11,22),[33,44],True,33,44)
v = tu.index(33)
print(v)  输出结果得到5

 

posted @ 2018-12-14 17:01  我的饭呢  阅读(78)  评论(0编辑  收藏  举报