Keep your place in this quest

Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.

在 Python 中,有两种用于存储项目集合的基本数据结构:列表(lists)元组(tuples)

它们都允许你在一个变量中存储多个值,但有一个重要区别——列表是可变的,元组是不可变的

让我们来详细了解一下。


Python 中的列表

列表是一种可变的项目集合。
可变意味着你可以随时添加、删除和修改项目。列表用方括号 [] 括起来,项目之间用逗号分隔。

示例——创建一个列表:

fruits = ["apple", "banana", "orange"]
print(fruits)

# 输出: ["apple", "banana", "orange"]

1.1. 通过索引访问项目

在 Python 中,列表(以及大多数序列)的索引从0开始。 这意味着列表中的第一个项目位置是 0,第二个是 1,依此类推。

print(fruits[0])

# 输出: "apple"
提示:负索引从末尾开始计数:fruits[-1] → "orange"

1.2. 列表切片

就像字符串一样,你可以切片列表以获取一段连续的项目:

print(fruits[0:2])

# 输出: ["apple", "banana"]

切片 [start:end] 包括起始索引,但不包括结束索引。

1.3. 添加项目

使用 .append() 在列表末尾添加一个项目:

fruits.append("pineapple")
print(fruits)

# 输出: ["apple", "banana", "orange", "pineapple"]

1.4. 删除项目

使用 .remove() 删除列表中指定值的第一个出现项:

fruits.remove("orange")
print(fruits)

# 输出: ["apple", "banana", "pineapple"]

1.5. 检查项目是否存在

in 运算符用来检查某个值是否在列表中:

has_orange = "orange" in fruits
print(has_orange)  # False

你也可以在函数中使用它:

def is_fruit(item):
    if item in fruits:
        print(f"{item} 是一种水果!")
    else:
        print(f"{item} 不是一种水果!")

is_fruit("horse")
is_fruit("apple")

1.6. 修改项目

由于列表是可变的,你可以覆盖已有的值:

fruits[0] = "green apple"
print(fruits)

重要提示:当你需要灵活性时,列表非常适合。但如果你的项目集合不应改变,请使用元组。


Python 中的元组

元组与列表非常相似,但它是不可变的。 不可变意味着一旦创建,你不能添加、删除或修改其中的元素。

元组用圆括号 () 括起,项目之间用逗号分隔:

example = (1, 2, 3, 4)
print(example)
注意:元组仍然可以包含可变对象,比如里面包含列表,但元组本身的结构(包含哪些项目)是不能被改变的。

总结

  • 列表:可变,使用 [],适合会改变的集合。
  • 元组:不可变,使用 (),适合固定数据。

下一课,我们将学习循环——你将用它来遍历这些集合中的每一个项目并对其进行操作。