深入浅出 Python:列表(List)与元组(Tuple)
引言
Python 中的列表(List)和元组(Tuple)是两种非常常用的数据结构,它们都可以存储多个元素。虽然它们看起来相似,但在使用场景、性能和功能上存在显著差异。本文将深入浅出地介绍 Python 的列表和元组,帮助你理解它们的区别、应用场景以及如何高效地使用它们。
1. 列表(List)
1.1 列表的基本概念
列表是 Python 中一种有序、可变的数据结构,可以存储不同类型的元素。列表中的元素可以通过索引访问,索引从 0 开始。列表的特点是:
- 有序:元素按照插入的顺序排列。
- 可变:可以在创建后修改、添加或删除元素。
- 允许重复:同一个列表中可以包含多个相同的元素。
- 异构:列表中的元素可以是不同类型的数据(如整数、字符串、字典等)。
1.1.1 创建列表
创建列表有多种方式,最常见的是使用方括号 []
包裹元素,元素之间用逗号分隔。
# 创建一个空列表
empty_list = []
# 创建一个包含多个元素的列表
fruits = ["apple", "banana", "orange"]
# 使用 list() 函数创建列表
numbers = list(range(1, 6)) # [1, 2, 3, 4, 5]
1.2 列表的操作
1.2.1 访问元素
通过索引可以访问列表中的元素,索引从 0 开始。你还可以使用负索引从列表末尾开始访问元素。
fruits = ["apple", "banana", "orange"]
# 访问第一个元素
print(fruits[0]) # 输出: apple
# 访问最后一个元素
print(fruits[-1]) # 输出: orange
1.2.2 修改元素
由于列表是可变的,你可以直接通过索引修改列表中的元素。
fruits = ["apple", "banana", "orange"]
# 修改第二个元素
fruits[1] = "grape"
print(fruits) # 输出: ['apple', 'grape', 'orange']
1.2.3 添加元素
append()
:在列表末尾添加一个元素。insert()
:在指定位置插入一个元素。extend()
:将另一个列表的所有元素添加到当前列表的末尾。
fruits = ["apple", "banana", "orange"]
# 在末尾添加一个元素
fruits.append("grape")
print(fruits) # 输出: ['apple', 'banana', 'orange', 'grape']
# 在指定位置插入一个元素
fruits.insert(1, "pear")
print(fruits) # 输出: ['apple', 'pear', 'banana', 'orange', 'grape']
# 将另一个列表的所有元素添加到当前列表
more_fruits = ["mango", "kiwi"]
fruits.extend(more_fruits)
print(fruits) # 输出: ['apple', 'pear',