Python数据类型中的元组Tuple
定义
元组(Tuple)是另一个数据类型,类似于 List(列表)。元组用 () 创建,其内部的元素用逗号隔开。元组中的元素可以是不同的数据类型,但是也是有序的。
# 定义元组
tup = ('apple', 'banana', 'orange')
访问元素
我们通常使用方括号 [] 来访问元组中的元素。最开始的元素的索引值是 0,以此类推。
print(tup[0]) #输出:apple
print(tup[1:]) #输出:('banana', 'orange')
元组中的修改和删除
元组是不可变的,也就是说,你不能添加或删除元素。但是我们可以修改元组中的元素。对元素的修改,首先需要将其转换为列表,然后才能进行后续操作。
lst = list(tup) # 将元组转换为列表
lst[0] = 'grape' # 修改列表中的元素
tup = tuple(lst) # 将列表转换回元组
print(tup) #输出:('grape', 'banana', 'orange')
元组中的切片
元组的切片操作与列表相似,可以对元素进行筛选。
print(tup[:2]) #输出:('grape', 'banana')
元组相关操作
序列操作
元组与列表的操作几乎一样,好比它是不可变的列表,所以它也可以完成序列中的操作。
tpl1 = ('apple', 'banana', 'orange')
tpl2 = ('grape', 'pear', 'watermelon')
print(tpl1 + tpl2) # 输出:('apple', 'banana', 'orange', 'grape', 'pear', 'watermelon')
print(tpl1 * 2) # 输出:('apple', 'banana', 'orange', 'apple', 'banana', 'orange')
print('banana' in tpl1) # 输出:True
内置方法
元组内置了一些方法,如 count()
和 index()
。
# 演示 count()
tpl3 = ('apple', 'banana', 'apple', 'orange', 'apple')
print(tpl3.count('apple')) # 输出:3
# 演示 index()
print(tpl3.index('orange')) # 输出:3
元组的优点
元组是不可变的,因此元组的访问速度要比列表快得多。此外,元组不可变,因此它们比列表更安全。
示例
元组用于多返回值的函数
def get_user_info():
name = 'Alex'
age = 30
address = 'China'
return name, age, address
info = get_user_info() # 返回的是一个元组
name, age, address = info # 解包元组,将元素赋值给变量
print(name, age, address)
元组用于交换变量的值
a = 2
b = 5
a, b = b, a
print(a, b) # 输出:5 2