元组的定义
元组本身不是可变数据类型,没有增加、删除、更改、查看的操作,元组内可以存储任意数据类型。
-
元组里面包含可变数据类型,可以间接修改元组内容
t0 = ([1,2,4],7)
t0[0].append(4)
print(t0)
运行结果
([1, 2, 4, 4], 7) -
元组里如果只有一个元素的时候,后面要加逗号,否则数据类型不确定
t1 = (‘python’,)
print(type(t1))
运行结果
<class ‘tuple’>
如果不加逗号,打印出来的数据类型为字符型
元组的特性
-
索引与切片
object1 = (‘math’,‘english’,‘physic’)
score = (‘134’,‘145’,‘98’)
print(object1[0])
print(object1[-1])
print(object1[1:])
print(object1[:-1])
print(object1[::-1])
运行结果:
math
physic
('english', 'physic')
('math', 'english')
('physic', 'english', 'math')
-
重复
object1 = (‘math’,‘english’,‘physic’)
score = (‘134’,‘145’,‘98’)
print(score3)
print(object12)
运行结果:
('134', '145', '98', '134', '145', '98', '134', '145', '98')
('math', 'english', 'physic', 'math', 'english', 'physic')
-
连接
object1 = (‘math’,‘english’,‘physic’)
score = (‘134’,‘145’,‘98’)
object2=object1+(‘python’,)
print(object2)
运行结果:
(‘math’, ‘english’, ‘physic’, ‘python’) -
成员操作符
object1 = (‘math’,‘english’,‘physic’)
score = (‘134’,‘145’,‘98’)
print(‘english’ in object1)
print(‘22’ in score)
运行结果:
True
False
-
可迭代(支持for 循环)
object1 = (‘math’,‘english’,‘physic’)
score = (‘134’,‘145’,‘98’)
for subject,scores in zip(object1,score):
print(subject ,’:’,scores)
运行结果:
math : 134
english : 145
physic : 98
元组的常用方法
t = (1,2.5,False,'python','hello','hello','hello')
print(t.count('hello')) #判断元素出现的次数
print(t.index(False)) #索引元素出现的次数
元组的应用
####### 元组的赋值,有多少个元素,就有多少个变量接受
t = ('apple','red','500g')
fruit,color,weight = t
print(fruit,color,weight)
运行结果:
apple red 500g
####### 类型的转换
fruit = (‘apple’,‘lemon’,‘bannana’,‘peach’)
fruitli = list(fruit)
fruitli.sort()
print(fruitli)
fruits = sorted(fruit)
print(fruits)
运行结果:
['apple', 'bannana', 'lemon', 'peach']
['apple', 'bannana', 'lemon', 'peach']