#创建空元组
tuple1 = ()
print(tuple1)
#创建带有元素的元组
tuple2 = (1, 2, 3, "jjking", True) #元素类型可以不同
print(tuple2)
#定义只有1 个元素的元组
tuple3 = (1 ) #后面必须加逗号
print(tuple3)
print(type(tuple3))
'''
元组元素的访问
格式: 元组名[下标]
注意:下标不能越界
'''
tuple4 = (1, 2, 3, 4, 5)
print(tuple4[3])
#获取最后一个元素
print(tuple4[-1])
#获取倒数第二个元素
print(tuple4[-2])
#修改元组,实际上修改的是元素里面的数据
tuple5 = (1, 2, 3, 4, [1, 2, 3], 5)
print(tuple5)
tuple5[4][2] = 4
print(tuple5)
#删除元组
del tuple5
#print(tuple5) 因为被删除了所以打印不出来,会报错
#元组的操作
t1 = (1 ,2, 3, 4)
t2 = (5, 6)
t3 = t1 + t2
print(t3)
#元组重复
print(t3 *3)
#判断元素是否在元组中
print( 3 in t3)
#元组的截取
#格式:元组名[ 开始下标:结束下标 ]
#从开始下标开始截取,到结束下标之前,默认从头到尾
print(t3[1:4])
#二维元组:元素为一维元组的元组
t4 = ((1, 2, 3), (4, 5, 6), (7, 8, 9))
print(t4)
print(t4[2][1])
'''元组的方法'''
#len() 返回元组中元素的个数
print(len(t4))
#max() 返回元组中的最大值
print(max(t1))
#min() 返回元祖中的最小值
print(min(t1))
#列表转元组
list2 = [1, 2, 3, 4, 5]
t5 = tuple(list2)
print(t5)
#元组转列表
list1 = list(t3)
print(list1)
'''
一旦初始化元组里面的元素就不能修改了
和列表的区别就是不可变
这就提高了数据的安全性
所以说能用元组尽量用元组
'''
#元组的遍历
for i in (1, 2, 3, 4,5):
print(i)