Python 列表
提示
- 创建和访问列表:列表通过在
[]
中放置元素并用逗号分隔来创建,可以存储不同类型和重复的元素,并通过索引访问。 - 操作列表元素:列表提供了 append(), extend(), insert() 等方法用于添加元素,以及 remove(), pop(), clear() 等方法用于删除元素。
- 列表推导式和遍历:列表推导式提供了创建列表的简洁方式,for 循环可用于遍历列表元素,且可以使用
in
关键字检查元素是否存在于列表中。
在 Python 中,列表用于一次存储多个数据。
假设我们需要记录 5 个学生的年龄。我们可以创建一个列表,而不是创建 5 个单独的变量。
创建列表
我们通过将元素放在 []
中并用逗号分隔来创建列表。例如,
ages = [19, 26, 23]
print(ages)
# 输出:[19, 26, 23]
这里,我们创建了一个名为 ages 的列表,其中包含 3 个整数项。
列表可以:
- 存储不同类型的元素(整数、浮点数、字符串等)。
- 存储重复的元素。
# 不同数据类型元素的列表
list1 = [1, "Hello", 3.4]
# 重复元素的列表
list1 = [1, "Hello", 3.4, "Hello", 1]
# 空列表
list3 = []
注意:我们也可以使用 list() 构造函数创建列表。
访问列表元素
在 Python 中,列表是有序的,列表中的每个项都与一个数字相关联。这个数字被称为列表的索引。
第一个元素的索引是 0,第二个元素是 1,依此类推。例如,
languages = ["Python", "Swift", "C++"]
# 访问索引 0 处的项
print(languages[0]) # Python
# 访问索引 2 处的项
print(languages[2]) # C++
在上面的示例中,我们创建了一个名为 languages 的列表。
这里,我们可以看到每个列表项都与索引号相关联。我们使用了索引号来访问这些项。
记住:列表索引总是从 0 开始。因此,列表的第一个元素位于索引 0,而不是 1。
Python 中的负索引
Python 允许其序列使用负索引。索引 -1 指的是最后一个项,-2 指的是倒数第二个项,依此类推。
让我们看一个示例,
languages = ["Python", "Swift", "C++"]
# 访问索引 0 处的项
print(languages[-1]) # C++
# 访问索引 2 处的项
print(languages[-3]) # Python
注意:如果指定的索引在列表中不存在,Python 会抛出 IndexError
异常。
列表切片
在 Python 中,我们可以使用切片运算符 :
来访问列表的一部分。例如,
# Python 中的列表切片
my_list = ['p','r','o','g','r','a','m','i','z']
# 索引 2 到索引 4 的项
print(my_list[2:5])
# 索引 5 到结尾的项
print(my_list[5:])
# 开始到结尾的项
print(my_list[:])
输出
['o', 'g', 'r']
['a', 'm', 'i', 'z']
['p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z']
这里,
my_list[2:5]
返回索引 2 到索引 4 的列表。my_list[5:]
返回索引 5 到结尾的列表。my_list[:]
返回所有列表项。
注意:当我们切片列表时,起始索引是包含的,但结束索引是排除的。
向列表添加元素
列表是可变的(可改变
的)。这意味着我们可以从列表中添加和移除元素。
Python 列表提供了不同的方法来添加项。
1. 使用 append()
append() 方法在列表的 末尾添加一个项。例如,
numbers = [21, 34, 54, 12]
print("Append 之前:", numbers)
# 使用 append 方法
numbers.append(32)
print("Append 之后:", numbers)
输出
Append 之前: [21, 34, 54, 12]
Append 之后: [21, 34, 54, 12, 32]
在上面的示例中,我们创建了一个名为 numbers 的列表。注意这行代码
numbers.append(32)
这里,append()
在数组的末尾添加了 32