Python3基本数据类型之tuple

Posted zhangyanlong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python3基本数据类型之tuple相关的知识,希望对你有一定的参考价值。

tuple

即元组

作用:存多个值,对比列表来说,它不可变,可以当作字典的key,主要用来读。

用()包裹,用,逗号隔开,为了做区分,通常在最后一个元素后面再写一个逗号如 t1=(1,"a",(1,2),3,) 

注意的是如果元组只定义一个元素,即 t2=(2) ,python会认为t2就是一个数字,所以必须要加逗号区分,即 t2=(2,) 

元素类型可以是不同的

一级元素不可变,一旦初始化就不能修改,没有append(),insert()这样的方法,不能重新给索引赋值。但是如果二级元素可变,则可以更改二级元素,如list。

可以用+连接

可以索引或者切片

可以for循环,即迭代

它是有序的

元素相同,也可以,输出时不会去重

 1  1 s1 = "asd123"
 2  2 s2=["1","a"]
 3  3 s3=(123,34,"asd",)
 4  4 v1=tuple(s1)#字符串转为元组,元素被一个个分开
 5  5 print(v1)
 6  6 v2=tuple(s2)#列表转为元组,元素被一个个分开
 7  7 print(v2)
 8  8 v3=list(s3)#元组转换为列表
 9  9 print(v3)
10 10 v4=str(s3)
11 11 print(v4)#元组转字符串
12 12 #不过这种形式不符合我们的要求
13 13 #当元组中只有字符串时
14 14 s4=("123","asd",)
15 15 print("".join(s4))#输出123asd,str类型

 结果

1 (a, s, d, 1, 2, 3)
2 (1, a)
3 [123, 34, asd]
4 (123, 34, asd)
5 123asd

 


 

1 t1=(12,"12",[1,2,3,(12,3)],"asd",12,)
2 t1[2][1]=123#元组里的list中的元素可以修改
3 print(t1)

 结果

(12, 12, [1, 123, 3, (12, 3)], asd, 12)

 元组元素值不能直接修改,但是可以用+进行整合

1 t3=(1,2,"a")
2 t4=("b",)
3 t5=t3+t4
4 print(t5)

 结果

1 (1, 2, a, b)

 元组运算符

与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。

技术图片


 

元组要掌握的操作

1.按索引取值(正向+反向),一级元素不能直接改,可以用+间接增加,修改的话可以转list

2.切片

3.长度,len()

4.成员运算,in和not in

5,循环,for

1 tu=(1,"a",(1,1,1),[123,"asd"],True)
2 for item in tu:#可迭代对象
3     print(item)
4 print(tu[1])
5 print(tu[1:4])

 

结果

1 1
2 a
3 (1, 1, 1)
4 [123, asd]
5 True
6 a
7 (a, (1, 1, 1), [123, asd])

 

 

 1 T = (1, 2, 3, "a", True, (12, 34), [1, 2, 3])
 2 print(len(T))
 3 
 4 for item in T:
 5     print(item)
 6 
 7 # 和上面效果一样,按索引取值
 8 # for i in range(len(T)):
 9 #     print(T[i])
10 
11 print(1 in T)
12 print(1 not in T)

 

 结果

 1 7
 2 1
 3 2
 4 3
 5 a
 6 True
 7 (12, 34)
 8 [1, 2, 3]
 9 True
10 False

以上是关于Python3基本数据类型之tuple的主要内容,如果未能解决你的问题,请参考以下文章

零基础学PythonDay6 Python基本数据类型之Tuple

python3之数据类型

python基础--基本数据类型(Tuple(元组)--不可变数据)

01-python3基础-基本数据类型

零基础学PythonDay5 Python基本数据类型之List

零基础学PythonDay7 Python基本数据类型之Set