元组
元组也是一组有序数据的组合,和列表唯一的不同时,元组不可修改
列表比作一个用铅笔写的清单(擦了,修改)
元组比作一个用钢笔写的清单(不能擦)
元组的操作
创建元组
1.创建空元组
变量 = () 或者 变量 = tuple()
2.创建单个元素的元组
变量= (值,) 或者 变量 = 值,
3.创建多个元素的元组
变量 = (值,值...) 或者 变量 = 值,值...
基本操作
1.访问元素
变量[索引]
2.修改元素(不能)
3.删除元素(不能)
4.添加元素(不能)
序列操作
序列操作:索引,分片,最大值,最小值,长度,加法,乘法。。
1.元组相加:
变量 = 元组1 + 元组2
结果:新的元组
2.元组相乘
变量 = 元组 * 整数
结果:新的元组
3.索引操作
变量[索引] 只能访问不能修改和删除
4.分片
格式: 变量[:] 获取整个元组的元素
格式:变量[开始索引:] 从开始索引的元组截取末尾
格式: 变量[:结束索引] 丛开头截取到结束索引之前
格式: 变量[开始索引:结束索引] 从开始索引位置截取到结束索引之前
格式: 变量[开始索引:结束索引:间隔值] 从开始索引位置按照间隔值截取到结束索引之前
5.成员检测:
格式:值 in 元组
作用:检测一个值是否在元组当中
格式:值 not in 元组
作用:检测一个值是否不再元组当中
序列函数
len() 获取元组的长度
max() 获取元组中的最大值
min() 获取元组中的最小值
tuple() 创建空元组或者将其他序列转化为元组类型
元组的遍历
1.简单元组遍历
变量 = (值1,值2,值3...)
for 变量 in 元组:
使用变量获取元组的每个值
2.使用while循环遍历
i = 0
while i<len(元组):
使用元组变量[i]访问每个值
i += 1
3.多级元组的遍历(长度相同)
元组 = ((值1,值2...),(值1,值2...)...)
for 变量1,变量2.. in 元组:
使用变量1和变量2
4.多级元组的遍历(长度不相同)
元组 = ((值1,值2...),(值1,值2...)...)
for 变量1 in 元组:
for 变量2 in 变量1:
使用变量2获取每个值
5.直接获取二级元组的值
tuple1[1][3]
元组内涵/元组推导式
1.基本的格式:
格式: 变量 = (i for i in 元组)
结果:不是元组而是一个生成器
2.带有条件的格式:
格式: 变量 = (i for i in 元组 if 条件表达式)
结果:不是元组而是一个生成器
3.多个循环的推导式:
格式: 变量 = (x+y for x in 元组1 for y in 元组2)
结果:不是元组而是一个生成器
x+y可以是其他操作
4.带有条件的多个循环的推导式:
格式: 变量 = (x+y for x in 元组1 for y in 元组2 if 条件表达式)
结果:不是元组而是一个生成器
x+y可以是其他操作
作用:把99乘法表再用这个元组推导式做一遍,还得遍历处理
元组函数
index() 获取指定值在元组中的索引值
格式:元组.index(值)
返回值:整数
count() 计算某个值在元组中出现的次数
格式:元组.count(值)
返回值:整数
变量交换
变量1,变量2 = 变量2,变量1