python常用数据结构元组详解

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程序时更加便捷高效。

后端开发标签