python tuple 元组
元组:不可变,无序 tuple
1,定义:a,一维元组/b,二维元组/c,三维元组
2,访问:a,正/b,反
3,切片:a,正切/b,反切/c,混合切
4,遍历:a,一维遍历/b,二维遍历
1,定义
a,一维元组
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1)
(1, ‘zhangsan’, 18, ‘sales’)
b,二维元组
userinfo1=((1,"zhangsan",18,"sales"),(2,"wangwu",20,"it"))
print(userinfo1)
((1, ‘zhangsan’, 18, ‘sales’), (2, ‘wangwu’, 20, ‘it’))
c,三维元组
userinfo1=((1,"zhangsan",18,"sales"),(2,"wangwu",20,"it",(3,"zhaoliu",16,"student")))
print(userinfo1)
((1, ‘zhangsan’, 18, ‘sales’), (2, ‘wangwu’, 20, ‘it’, (3, ‘zhaoliu’, 16, ‘student’)))
2,访问
a,正(从做到右,从0开始,0,1,2,3…)
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1)
print(userinfo1[0])
print(userinfo1[3])
(1, ‘zhangsan’, 18, ‘sales’)
1
sales
b,反(从右到左,从-1开始,-1,-2,-3…)
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1)
print(userinfo1[-1])
print(userinfo1[-4])
(1, ‘zhangsan’, 18, ‘sales’)
sales
1
3,切片(按照索引进行获取,
格式:tuple[start:end]
#从左往右进行,以start开始,end结束,但是不包含end,#start要大于end,是看实际位置,如果start实际位置在end位置的右边,则切出来的为空,)
#start省略则从0开始
#end省略,则直接切到最后
a,正切
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1[1:3])
( ‘zhangsan’, 18)
#省略start,直接从0开始
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1[:3])
(1, ‘zhangsan’, 18)
#省略end,直接切到最后
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1[1:])
(‘zhangsan’, 18, ‘sales’)
b,反切
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1[-3:-1])
(‘zhangsan’, 18)
#省略start,直接从0开始
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1[:-1])
(1, ‘zhangsan’, 18)
#省略end,切到最后
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1[-3:])
(‘zhangsan’, 18, ‘sales’)
c,混合切,遵循实际位置的原则,一般应该很少用
userinfo1=(1,"zhangsan",18,"sales")
print(userinfo1[-3:2])
(‘zhangsan’,)
4,遍历
a,一维遍历
userinfo1=(1,"zhangsan",18,"sales")
for i in range(len(userinfo1)):
print(userinfo1[i])
1
zhangsan
18
sales
b,二维遍历
userinfo1=((1,"zhangsan",18,"sales"),(2,"wangwu",20,"it"))
print(userinfo1[0])
print(userinfo1[1])
for i in range(len(userinfo1)):
for j in range(len(userinfo1[i])):
print(userinfo1[i][j])
(1, ‘zhangsan’, 18, ‘sales’)
(2, ‘wangwu’, 20, ‘it’)
1
zhangsan
18
sales
2
wangwu
20
it