目录
1、元组的定义
基本定义
元组使用圆括号 ()
来定义,元素之间用逗号 ,
分隔
my_tuple = (1, 2, 3)
单一元素的元组
如果元组只有一个元素,必须在元素后面加上一个逗号 ,
,否则它会被当作普通的括号表达式,而不是元组
single_element_tuple = (1,) # 正确,元组有一个元素
not_a_tuple = (1) # 这是一个整数,而不是元组
空元组
空元组没有任何元素,可以通过空的圆括号 ()
定义
empty_tuple = () # 空元组
元组嵌套
元组可以包含其他元组作为元素,从而形成嵌套结构
nested_tuple = ((1, 2), (3, 4)) # 元组包含两个子元组
2、元组的特性
不可变性
元组一旦创建,其内容不能修改(即不可添加、删除或修改元素)。如果需要修改元素,必须创建一个新的元组
my_tuple = (1, 2, 3)
# my_tuple[1] = 4 # 会抛出 TypeError: 'tuple' object does not support item assignment
支持索引和切片
元组支持索引操作,允许访问指定位置的元素;也支持切片操作,可以提取一部分元素
my_tuple = (1, 2, 3, 4, 5)
print(my_tuple[0]) # 输出 1,访问第一个元素
print(my_tuple[1:4]) # 输出 (2, 3, 4),切片操作
元素可以是不同类型
元组中的元素可以是不同类型的数据,例如整数、浮点数、字符串等
mixed_tuple = (1, "hello", 3.14, True)
元组作为字典的键
因为元组是不可变的,可以用作字典的键,而列表由于是可变的,不能作为字典的键
my_dict = { (1, 2): "value1", (3, 4): "value2" }
print(my_dict[(1, 2)]) # 输出 'value1'
3、元组的方法
count(x)
:返回元组中元素 x
的出现次数
my_tuple = (1, 2, 2, 3, 2)
print(my_tuple.count(2)) # 输出 3,元素 2 出现了 3 次
index(x)
:返回元素 x
在元组中第一次出现的位置索引。如果找不到元素,会抛出 ValueError
异常
my_tuple = (1, 2, 3, 4)
print(my_tuple.index(3)) # 输出 2,元素 3 第一次出现在索引位置 2
len()
:获取元组的长度(即元素的个数)
my_tuple = (1, 2, 3, 4, 5)
length = len(my_tuple)
print(length) # 输出 5
max()
:返回元组中的最大元素
my_tuple = (1, 2, 3, 4)
maximum_value = max(my_tuple)
print(maximum_value) # 输出 4
min()
:返回元组中的最小元素
my_tuple = (1, 2, 3, 4)
minimum_value = min(my_tuple)
print(minimum_value) # 输出 1
4、元组的函数
sorted()
:返回一个排序后的元组,原始元组不变
my_tuple = (3, 1, 4, 2)
sorted_tuple = sorted(my_tuple)
print(sorted_tuple) # 输出 [1, 2, 3, 4]
tuple()
:将其他序列转换为元组
my_list = [1, 2, 3]
my_tuple = tuple(my_list)
print(my_tuple) # 输出 (1, 2, 3)