元组(tuple)是Python中另一种重要的数据类型,类似于列表,但是元组是不可变的(immutable)。
这意味着元组一旦被创建,就不能对其中的元素进行修改,添加或删除,但可以访问其中的元素。
定义元组
使用小括号 () 定义元组,并用逗号 , 分隔其中的元素。
my_tuple = (1, 2, 3, 'a', 'b', 'c')
访问元素
元组中的元素可以通过索引来访问,索引从 0 开始,用 [] 操作符表示。
print(my_tuple[0]) # 输出 1
print(my_tuple[3]) # 输出 'a'
切片元组
与列表一样,可以通过切片操作符 : 来获取元组的子集。
print(my_tuple[1:4]) # 输出 (2, 3, 'a')
元组的不可变性
元组的一大特点是不可变性,这意味着一旦创建,就不能对其中的元素进行修改、添加或删除。
my_tuple = (1, 2, 3)
my_tuple[1] = 4 # TypeError: 'tuple' object does not support item assignment
由于元组是不可变的,因此在创建元组时必须确保其中的元素是正确的。如果需要修改元组中的元素,可以使用元组的拼接或复制操作来创建新的元组。
my_tuple = (1, 2, 3)
new_tuple = my_tuple + (4, 5)
print(new_tuple) # 输出 (1, 2, 3, 4, 5)
与列表相比,元组有以下优点:
- 元组是不可变的,因此比列表更安全,更适合用于存储常量数据。
- 元组比列表更轻量级,更适合用于存储大量的数据。
- 元组可以作为字典的键,而列表不能。
- 元组可以作为函数的参数或返回值,而列表不能。