1. 元组基础
元组 (tuple)是Python语言中常用的一种数据结构,类似于列表 (list),但是元组是不可变的。
元组的基本语法格式如下:
(元素1, 元素2, ..., 元素n)
其中,每个元素用逗号隔开,整个元组要用小括号包围。
1.1 创建元组
元组的创建方法与列表类似,可以使用以下两种方式:
1. 使用小括号 () 和逗号 , 相连接的方式创建元组:
t = (1, 2, 3)
print(t)
# 输出结果为:(1, 2, 3)
2. 如果元组中只有一个元素,还可以在这个元素后面加一个逗号,这样就可以创建一个只有一个元素的元组:
t = (1,) # 这是一个只有一个元素的元组
print(t)
# 输出结果为:(1,)
1.2 访问元组中的元素
元组中的元素与列表类似,也是通过下标来访问的。下标从0开始,例如:
t = (1, 2, 3)
print(t[0])
# 输出结果为:1
1.3 元组的运算
元组支持的运算包括:
计算元素个数:len(tuple)
连接:t1 + t2
复制:t * n
t1 = (1, 2, 3)
t2 = (4, 5, 6)
t3 = t1 + t2 # 连接
print(t3)
# 输出结果为:(1, 2, 3, 4, 5, 6)
t4 = t1 * 3 # 复制
print(t4)
# 输出结果为:(1, 2, 3, 1, 2, 3, 1, 2, 3)
2. 元组的应用
2.1 作为函数的返回值
元组可以作为函数的返回值,可以一次返回多个值。例如下面的代码:
def get_info():
name = '小明'
age = 18
gender = '男'
return name, age, gender
info = get_info()
print(info)
# 输出结果为:('小明', 18, '男')
函数 get_info 返回了一个三元素的元组,然后将这个元组赋值给变量 info,打印 info 的值,结果为 ('小明', 18, '男')。
2.2 批量赋值
元组可以进行批量赋值,例如下面的代码:
t = (1, 2, 3)
x, y, z = t
print(x, y, z)
# 输出结果为:1 2 3
在上面的代码中,元组 t 包含了三个元素,然后将 t 中的元素分别赋值给变量 x、y 和 z。
2.3 元组解包
元组解包是指将元组中的元素按照顺序赋值给多个变量的过程,例如:
t = (1, 2, 3)
x, y, z = t
print(x, y, z)
# 输出结果为:1 2 3
在上面的代码中,将元组中的元素 1、2、3 赋值给了变量 x、y 和 z。
2.4 格式化字符串
元组还可以用来格式化字符串,例如下面的代码:
name = '小明'
age = 18
gender = '男'
info = '我的名字是%s,我%d岁,我是%s生。' % (name, age, gender)
print(info)
# 输出结果为:'我的名字是小明,我18岁,我是男生。'
在上面的代码中,使用了元组,将个人信息的每个变量值分别填充到了格式化字符串中。这种方法的优点是可以将大量数据批量格式化,而且代码量比较少。
2.5 元组作为字典的键
与列表相同,元组也可以作为字典的键,因为元组不可变,所以可以保证键的不变性,例如:
d = {(1, 2): 'a', (3, 4): 'b'}
print(d[(3, 4)])
# 输出结果为:'b'
3. 总结
元组是Python语言中的一种数据结构,与列表类似,但是不可变。元组主要用于存储多个值,而且可以作为函数的返回值使用、批量赋值、格式化字符串、字典的键等。因此,熟悉元组的使用方法可以让我们在编写Python程序时更加便捷高效。