Python学习之元组的使用详解

  • Post category:Python

Python学习之元组的使用详解

Python中元组(tuple)是一种不可变的序列结构,和列表类似,但元组的元素不能被修改。

定义元组

定义元组的方式很简单,只需要使用逗号分隔元素,并用圆括号将它们括起来即可。

例如:

a = ('apple', 'banana', 'orange')
b = (1, 2, 3)
c = ()  # 空元组

我们也可以使用tuple()函数创建元组:

a = tuple([1, 2, 3])  # 将列表转换为元组
b = tuple('hello')  # 将字符串转换为元组

访问元素

使用下标(索引)访问元组的元素,和列表类似,不过元组是不可变的,所以不能通过下标改变元素的值。

例如:

a = ('apple', 'banana', 'orange')
print(a[0])  # 访问第一个元素,输出:apple

切片操作

元组也支持切片操作,例如:

a = ('apple', 'banana', 'orange')
print(a[:2])  # 输出:('apple', 'banana')

元组排序

由于元组是不可变的,我们不能直接改变其中元素的顺序。但是我们可以使用sorted()函数对元组进行排序,并生成一个新的元组。

例如:

a = (3, 2, 1)
b = sorted(a)  # 排序后生成新的元组
print(b)  # 输出:(1, 2, 3)

示例一:元组用于多个变量的赋值

a, b, c = (1, 2, 3)
print(a)  # 输出:1
print(b)  # 输出:2
print(c)  # 输出:3

此处,我们将一个元组中的三个数依次赋值给三个变量。

示例二:元组用于函数返回值

Python中函数可以返回多个值,其实质是将返回值作为元组返回。

例如:

def get_sum_and_avg(a, b):
    return a + b, (a + b) / 2

s, avg = get_sum_and_avg(2, 4)
print(s)    # 输出:6
print(avg)  # 输出:3.0

此处,函数get_sum_and_avg()返回两个值,分别是两数之和和两数之和的平均数。我们将函数返回的元组依次赋值给savg两个变量。