1 . 元组的创建:
1 . 简介 :元组与列表类似,可以存储任意数据类型。不同之处在于元组的元素不能修改。属于不可变数据类型,没有增删改。
2 . 创建一个元组:
t = ([1, 2, 3], 'ssh', True) #和列表不同是,元组是(),列表是[]
print(t, type(t))运行结果:
([1, 2, 3], 'ssh', True) <class 'tuple'> #可以看到类型为tuple(元组)
如果元组内只有一个元素,在元素后要加,(英文下的逗号)
h = ("ssh")
print(type(h))
<class 'str'> #'str'字符串t = ("ssh",)
print(type(t))
<class 'tuple'> #加逗号后显示为元组
2 . 元组的特性:
1 . 索引:
功能:指定获取元组中某一个元素,与列表类似,索引从0开始,依次往后
t = (10,1.2,True,'westos','westos')
print(t[0])
print(t[-1]) #通过索引找到指定的元素,负数表示从右往左运行结果为:
10
westos
2 . 切片
功能:指定获取多个元素,可以截取元组的部分元素
t = (10,1.2,True,'westos','westos')
print(t[2:]) #除前两个外的元素
print(t[-2:]) #只打印最后两个元素print(t[:2]) #只打印前两个元素
print(t[:-2]) #除了最后两个元素print(t[::-1]) #倒叙打印运行结果为:
(True, 'westos', 'westos')
('westos', 'westos')
(10, 1.2)
(10, 1.2, True)
('westos', 'westos', True, 1.2, 10)
3、连接
可以将两个元组连接成一个元组:格式 tup1 + tup2
不同的数据类型之间不能连接
t = ([1, 2, 3], 'ssh', True)
h = ('ftp', False)
print(t + h)运行结果:
([1, 2, 3], 'ssh', True, 'ftp', False)
4、重复
通过操作可以将元组中的元素重复n次:格式 tup * n,简单来说就是将元组中的数据复制n编追加在列表最后
t = ([1, 2, 3], 'ssh', True)
print(t * 2)运行结果:
([1, 2, 3], 'ssh', True, [1, 2, 3], 'ssh', True)
5、成员操作符
检测某某某是否在列表中,有返回值为True,反之为False
t = ([1, 2, 3], 'ssh', True)
print('ssh' in t) #判断字符串'ssh'是否存在于元组t
print('ftp' in t)运行结果:
True #存在
False #不存在
6、迭代(for循环)
迭代就是依次将列表中的元素赋值出来使用
t = ([1, 2, 3], 'ssh', True)
for i in t:print(i)运行结果:
[1, 2, 3]
ssh
True
3. 元组的常用方法:
count() # 统计指定的元素在改元组中出现的次数
index() # 表示指定元素的最小索引值
t = ([1, 2, 3], 'ssh', 'ssh',True)
print(t.count('ssh'))
print(t.count(5))运行结果:
2 #元组中有两个'ssh'
0 #元组中有0个5
t = ([1, 2, 3], 'ssh', 'ssh',True)
print(t.index(True))
print(t.index('ssh'))运行结果:
3
1
4. 元组运用场景
1 直接交换两个变量的值
a = 1
b = 2
b,a = a,bprint(a)
print(b)运行结果:
2
1
2 打印变量
当要打印的变量值元组中的时候,可以直接使用元组代替需要打印的变量
name = 'westos'
age = 11
t = (name,age)
print('name:%s,age:%d' %(name,age))
print('name:%s,age:%d' %t)运行结果:
name:westos,age:11
name:westos,age:11
3 . 元组转换成列表
t = ([1, 2, 3], 'ssh', True)
li = list(t)
print('li=',li)运行结果:
li= [[1, 2, 3], 'ssh', True]