02. Tuple — Python 进阶
元组(Tuple)是对象的集合,它有序且不可变。 元组类似于列表,主要区别在于不可变性。 在Python中,元组用圆括号和逗号分隔的值书写。
my_tuple = ("Max", 28, "New York") |
使用元组而不使用列表的原因
- 通常用于属于同一目标的对象。
- 将元组用于异构(不同)数据类型,将列表用于同类(相似)数据类型。
- 由于元组是不可变的,因此通过元组进行迭代比使用列表进行迭代要快一些。
- 具有不可变元素的元组可以用作字典的键。 使用列表做为键是不可能的。
- 如果你有不变的数据,则将其实现为元组将确保其有写保护。
创建元组
用圆括号和逗号分隔的值创建元组,或使用内置的 tuple
函数。
tuple_1 = ("Max", 28, "New York") |
('Max', 28, 'New York') |
访问元素
可以通过引用索引号访问元组项。 请注意,索引从0开始。
item = tuple_1[0] |
Max |
添加或者修改元素
不可能,会触发 TypeError
错误。
tuple_1[2] = "Boston" |
--------------------------------------------------------------------------- |
删除元组
del tuple_2 |
迭代
# 使用 for 循环迭代元组 |
Max |
检查元素是否存在
if "New York" in tuple_1: |
yes |
有用的方法
my_tuple = ('a','p','p','l','e',) |
5 |
切片
和字符串一样,使用冒号(:
)访问列表的子部分。
# a[start:stop:step], 默认步长为 1 |
(2, 3) |
元组解包
# 变量个数必需与元组元素个数相同 |
Max |
嵌套元组
a = ((0, 1), ('age', 'height')) |
((0, 1), ('age', 'height')) |
比较元组和列表
元组的不可变性使Python可以进行内部优化。 因此,在处理大数据时,元组可以更高效。
# 比较大小 |
104 bytes |
GitHub repo: qiwihui/blog
Follow me: @qiwihui
Site: QIWIHUI