列表解决什么问题
变量一次只装一个值,可现实里数据常常成堆:全班分数、一周气温、购物清单。列表让你把多个数据按顺序串起来,用一个名字管理整堆。
用「一排带编号的储物柜」理解:柜子紧挨着排好,每个有编号,每格放一样东西。
创建与按下标访问
用方括号创建,逗号分隔元素;同样用方括号 + 下标取某一格:
scores = [85, 92, 78, 90, 88]
print(scores[2]) # 78
print(scores[0]) # 85,第一个下标从 0 开始:第一个是 0 号,第三个是 2 号,最后一个是「长度 − 1」号。这点贯穿 Python(和 for、字符串切片都一致)。
列表是可变的:改 / 加 / 删
- 改:
scores[2] = 100,给某一格重新赋值。 - 加:
scores.append(95),在末尾追加一个元素。 - 删:
scores.pop()删末尾、scores.pop(0)删指定位置。
这种「内容随时能动」叫可变,是列表和元组最大的区别(元组创建后不能改)。
三个高频好搭档:len / in / for
len(scores) # 有几个元素
95 in scores # 95 在不在里面,返回 True/False
for s in scores: # 遍历每一个
print(s)列表负责「装」,for 循环负责「逐个干活」,两者几乎总是一起出现。
接下来:列表的底层原理
这一课教的是「怎么用」列表。如果你想深入「列表底层为什么这样设计、为什么按下标取值飞快而中间插入要挪一整排」,可以接着看《看动画学数据结构》里的 数组 那一课。那里讲的是「为什么」。Python 入门 → 数据结构 → 算法,路径就这样一步步铺开。