元组基本知识

‘’’
元组是一种数据类型,可以存储多个元素
一、特点:
1、有序,可以通过索引进行访问和引用
2、不可变,一旦定义后,元组中的数据不可以进行添加、修改和删除等操作
3、元组是异构的,可以包含不同类型的元素,如string、int、float、list等
‘’’

def tuple_info():

'''
1、字面量定义
    1)用()定义,将元素放置在小括号中
    2)元素通过逗号进行分隔,每个元素都可以不同类型
    3)可以空元组,但没有意义
    4)定义元组时,逗号是必须的,即使只有一个元素,也要加逗号,以区分它是一个元组
           而非其他数据类型
'''
t1 = (1,2,3,6,'Hello',(1,2,3))
print(t1)
print(type(t1))

t2 = (True)
print(t2)
print(type(t2))
t22 = (True,)
print(t22)
print(type(t22))

t3 = ()
print(t3)
print(type(t3))

'''
 2、构造方法定义
        使用构造方法定义元组时,参数只能是可迭代对象
    较少使用
'''
print(tuple('hello'))
print(tuple(['hello',1]))
print(tuple(('hello',1,2,'a')))

'''
 3、元组元素的引用--用下标访问
'''
t1 = (1,2,3,6,'Hello',(1,2,3),True)
print(t1)
print(t1[0])
print(t1[5])
# print(t1[7]) #报错,下标越界
print(t1[5][1])

'''
 4、元组切片
'''
t1 = (1,2,3,6,'Hello',(1,2,3),True)
print(t1[::])
print(t1[3:5:])
print(t1[3:5:2])
print(t1[5:3:-1])#负步长,逆序取元素
print(t1[-1:-5:-1])
# t1[0] = 111 #报错,元组不可变

'''
 5、元组的应用场景
    1)存储一组不可变数据,如常量、配置信息等
    2)作为字典的键值对,因为元组是不可变的,可以保证字典中的键的稳定性
    3)函数返回多个值:函数可使用元组作为返回值,一遍一次性返回多个相关的值。
       通过返回元组,函数可以将多个数据打包在一起,并且调用函数时可以方便地解包元组,
       获取其中的各个值
'''
'''
 6、元组的常用方法
    1)len() 获取元组元素个数,格式 len(t)
    2)count() str在元组中出现的次数,若无,则返回0,格式: .count(str)
    3)index() str在元组中首次出现的次数,若无则报错,格式: .index(str)
'''
print(len(t1))
print(t1.count(1))
print(t1.index(1))
print(t1.index(True,5,7))
# print(t1.index(22))#若无则报错