一、元组简介
(1) 元组用中括号 () 来定义,比如 tuple = (1, 2, 3, 4)
(2) 元组中的元素索引值从 0 开始,元组支持索引和切片操作,且元组元素支持多种类型
(3) 数字、字符串、元组都是不可变类型,这意味着一旦一个对象被定义了,它的值就不能再被更新,除非重新创建一个新的对象
二、元组的基本操作
(1) 创建元组:tuple = (1, 2, 3, 4)
(2) 访问元组:可以使用切片操作符和索引值来访问元组元素,如 tuple[2] 返回结果为 3
(3) 更新元组:因为元组是不可变类型,所以元组中的元素不能被更新,如果要更新,只能重新创建一个元组
(4) 删除元组:del tuple 表示删除整个元组
三、元组的操作符
(1) 标准类型操作符:= 、== 、> 、< 、>= 、<= 、!=
(2) 序列类型操作符:[] 、[:] 、[::] 详细用法
(3) 成员关系操作符:in 、not in ,用于判断元素是否在元组中,如 定义 tuple = (1, 2, 3),执行 3 in tuple 返回结果为 True
(4) 连接操作符:+ ,用于把多个元组对象合并在一起,如定义 t1 = (1, 2, 3) ,t2 = (4, 5, 6) ,则 t1 + t2 返回结果为 (1, 2, 3, 4, 5, 6)
(5) 重复操作符:* ,用于重复元组元素,如定义 tuple = (1, 2, 3, 4) ,则 tuple * 3 返回结果为 (1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4)
四、元组的内建函数
(1) 标准类型函数:cmp()
(2) 序列类型函数:len() 、max() 、min() 、str() 、cmp() 、list() 、......
(3) 元组类型内建函数:因为元组是不可变类型,所以没有专用的内建函数
五、元组的特殊性
(1) 不可变性:意味着一旦元组被定义了,它的值就不能再被更新,除非重新创建一个新的元组
(2) "可变性":其实元组也不是那么"不可变",比如连接操作符和重复操作符都相当于追加元组元素,这在某种意义上来说就是"可变"的了
(3) 默认集合类型:当一组以逗号分隔的对象没有定义类型时,那么他们默认是元组类型,如 1, 2, ‘a‘, ‘b‘ 返回结果为 (1, 2, ‘a‘, ‘b‘)
(4) 单元素元组:即只有一个元素的元组,注意创建单元素元组要加上逗号,如 tuple(1,) ,如果你定义的是 tuple(1) 那么这个类型是 int 而不是 tuple
(5) 字典的关键字:元组的值是不可变的,这意味着它们通过 hash 算法得到的值总是一个值,这是作为字典键值的一个必备条件,因此元组的值可以用作字典的一个 key