如何在 Python 中使用列表:列表基础
发布日期:
本文内容
列表(list)是一种数据结构,它按照一定的顺序存储一系列的元素。你可以创建包含字母、数字或任何其他元素的列表,这些元素之间可以是完全无关的。由于列表通常包含多个元素,因此给它们起一个复数形式的名称(如 letters
、digits
或 names
)是一个好习惯。
在 Python 中,列表用方括号([]
)表示,其中的元素用逗号分隔。以下是一个包含几种自行车品牌的简单示例:
|
|
当你让 Python 打印列表时,它会显示列表的内部表示形式,包括方括号:
|
|
这不是我们希望用户看到的输出。接下来,我们将学习如何访问列表中的元素。
访问列表元素
由于列表是有序的,你可以通过元素的位置(索引)来访问它们。要访问列表中的元素,只需指定列表的名称和元素的索引,并将索引放在方括号内。
例如,以下代码从 bicycles
列表中提取第一个元素:
|
|
当你获取列表元素时,Python 只返回该元素,不包括方括号:
|
|
这是我们希望用户看到的整洁、清晰的输出。
你也可以对列表中的任何元素使用如何在 Python 中对字符串进行操作这篇文章介绍的字符串方法。例如,使用 title()
方法可以让元素“trek”的首字母大写:
|
|
这个示例的输出与前一个示例相同,只是“T”变成了大写。
索引从 0 开始
在 Python 中,列表的第一个元素的索引是 0,而不是 1。这是大多数编程语言的通用规则,与列表操作的底层实现有关。如果你发现结果出乎意料,检查一下自己是否犯了“差一错误”。
第二个元素的索引是 1。按照这种简单的计数方式,要访问列表中的任何元素,只需将其位置减 1 作为索引。例如,要访问第四个元素,可以使用索引 3。
以下代码访问索引 1 和索引 3 处的自行车:
|
|
这些代码返回列表中的第二个和第四个元素:
|
|
Python 还提供了一种特殊语法来访问列表的最后一个元素。通过将索引指定为 -1,Python 会返回列表的最后一个元素:
|
|
这些代码返回 “specialized”。这种语法非常有用,因为你可能经常需要在不知道列表长度的情况下访问最后一个元素。这种约定也适用于其他负数索引,例如,索引 -2 返回倒数第二个元素,索引 -3 返回倒数第三个元素,以此类推。
使用列表中的值
你可以像使用其他变量一样使用列表中的值。例如,可以使用 f 字符串根据列表中的值创建消息。
以下示例从列表中提取第一个元素,并使用这个值创建一条消息:
|
|
这里使用 bicycles[0]
的值生成了一个句子,并将其赋给变量 message
。输出是一个简单的句子,其中包含列表中的第一个自行车品牌:
|
|
使用列表时避免索引错误
在刚开始使用列表时,初学者常会犯一个常见的错误:尝试访问不存在的元素。例如,如果你有一个包含三个元素的列表,却尝试访问第四个元素:
|
|
这将引发一个索引错误:
|
|
Python 试图访问索引为 3 的元素,但在列表 motorcycles
中找不到该索引处的元素。由于列表索引从 0 开始,这种错误经常发生。有些人习惯从 1 开始计数,错误地认为第三个元素的索引是 3,但在 Python 中,第三个元素的索引实际上是 2。
索引错误表明 Python 在指定索引处找不到元素。遇到这种情况时,尝试将索引减 1 并重新运行程序,检查结果是否正确。
请记住,访问列表的最后一个元素时,可以使用索引 -1,这是一个通用的做法,即使在访问后列表的长度发生变化:
|
|
索引 -1 总是返回列表的最后一个元素,在这个例子中是 ‘suzuki’:
|
|
但是,如果列表为空,尝试访问最后一个元素将导致错误:
|
|
列表 motorcycles
为空,因此 Python 返回索引错误:
|
|
当遇到索引错误且难以解决时,尝试打印列表及其长度。列表的实际内容可能与你预期的不同,尤其是在程序对其进行了动态处理之后。查看列表及其元素数量可以帮助你诊断这种逻辑错误。