摘要:在本教程中,你将学习 Python 元组以及如何有效地使用它们。
Python 元组简介
有时,你想创建一个在程序运行过程中不能被更改的项目列表。元组允许你实现这一点。
元组是一个不能更改的列表。Python 将不能更改的值称为不可变(immutable)。因此,根据定义,元组是一个不可变列表。
定义元组
元组类似于列表,只不过它使用圆括号 ()
而不是方括号 []
。
以下示例定义了一个名为 rgb
的元组:
rgb = ('red', 'green', 'blue')
定义元组后,你可以通过索引访问其中的单个元素。例如:
rgb = ('red', 'green', 'blue')
print(rgb[0])
print(rgb[1])
print(rgb[2])
输出:
red
green
blue
由于元组是不可变的,因此你无法更改其元素。以下示例尝试将 rgb
元组的第一个元素更改为 'yellow'
:
rgb = ('red', 'green', 'blue')
rgb[0] = 'yellow' # 这行代码会引发错误
这将产生一个错误:
TypeError: 'tuple' object does not support item assignment
定义只有一个元素的元组
要定义一个只包含一个元素的元组,你需要在第一个元素后面加上一个逗号。例如:
numbers = (3,)
print(type(numbers))
输出:
<class 'tuple'>
如果你省略了尾随的逗号,那么 numbers
的类型将是 int
,代表整数,并且它的值是 3。Python 不会创建一个包含数字 3 的元组:
numbers = (3)
print(type(numbers))
输出:
<class 'int'>
赋值元组
尽管你不能更改一个元组,但你可以将一个新的元组赋值给引用元组的变量。例如:
colors = ('red', 'green', 'blue')
print(colors)
colors = ('Cyan', 'Magenta', 'Yellow', 'black')
print(colors)
输出:
('red', 'green', 'blue')
('Cyan', 'Magenta', 'Yellow', 'black')
总结
元组是不可变的列表。
当你想要定义一个不可更改的列表时,请使用元组。