全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-19 7 分钟 ✍️ juanwangdev

Python列表基础

列表是可变序列,存储有序元素,支持增删改查等丰富操作。

列表创建

基本创建

Python
# 空列表
lst1 = []
lst2 = list()

# 带元素列表
lst3 = [1, 2, 3, 4, 5]
lst4 = ["a", "b", "c"]

# 混合类型
lst5 = [1, "hello", True, 3.14]

其他方式创建

Python
# range 创建
lst6 = list(range(5))       # [0, 1, 2, 3, 4]

# 字符串分割
lst7 = "hello".split()      # ['hello']
lst8 = list("hello")        # ['h', 'e', 'l', 'l', 'o']

# 列表推导式
lst9 = [x**2 for x in range(5)]  # [0, 1, 4, 9, 16]

索引与切片

索引访问

Python
lst = [1, 2, 3, 4, 5]

# 正向索引(从 0 开始)
print(lst[0])    # 1
print(lst[2])    # 3

# 反向索引(从 -1 开始)
print(lst[-1])   # 5
print(lst[-2])   # 4

切片操作

Python
lst = [1, 2, 3, 4, 5]

# 基本切片 [start:end]
print(lst[1:4])   # [2, 3, 4]
print(lst[:3])    # [1, 2, 3]
print(lst[2:])    # [3, 4, 5]

# 步长切片 [start:end:step]
print(lst[::2])   # [1, 3, 5]
print(lst[::-1])  # [5, 4, 3, 2, 1](反转)

增加元素

append 添加末尾

Python
lst = [1, 2, 3]
lst.append(4)
print(lst)  # [1, 2, 3, 4]

insert 插入位置

Python
lst = [1, 2, 3]
lst.insert(1, "new")
print(lst)  # [1, 'new', 2, 3]

extend 扩展列表

Python
lst = [1, 2]
lst.extend([3, 4])
print(lst)  # [1, 2, 3, 4]

# 等价于 + 运算
lst = [1, 2] + [3, 4]

删除元素

remove 按值删除

Python
lst = [1, 2, 3, 2]
lst.remove(2)       # 删除第一个匹配项
print(lst)          # [1, 3, 2]

pop 按索引删除

Python
lst = [1, 2, 3, 4]
value = lst.pop(1)  # 删除并返回索引 1 的元素
print(value)        # 2
print(lst)          # [1, 3, 4]

# pop() 默认删除末尾
lst.pop()           # 删除末尾元素
print(lst)          # [1, 3]

del 删除

Python
lst = [1, 2, 3, 4]
del lst[1]          # 删除索引 1
print(lst)          # [1, 3, 4]

del lst[1:3]        # 删除切片
print(lst)          # [1, 4]

clear 清空

Python
lst = [1, 2, 3]
lst.clear()
print(lst)          # []

修改元素

直接修改

Python
lst = [1, 2, 3]
lst[1] = "new"
print(lst)          # [1, 'new', 3]

切片修改

Python
lst = [1, 2, 3, 4]
lst[1:3] = ["a", "b"]
print(lst)          # [1, 'a', 'b', 4]

查询操作

in 检查存在

Python
lst = [1, 2, 3]
print(2 in lst)     # True
print(5 in lst)     # False

index 查找位置

Python
lst = [1, 2, 3, 2]
print(lst.index(2))  # 1(第一个位置)
# lst.index(5)       # ValueError(不存在时报错)

count 统计次数

Python
lst = [1, 2, 3, 2, 2]
print(lst.count(2))  # 3

常用方法

排序

Python
lst = [3, 1, 4, 2]

# sort 原地排序
lst.sort()          # 升序
print(lst)          # [1, 2, 3, 4]

lst.sort(reverse=True)  # 降序
print(lst)          # [4, 3, 2, 1]

# sorted 返回新列表
lst = [3, 1, 4, 2]
new_lst = sorted(lst)
print(new_lst)      # [1, 2, 3, 4]
print(lst)          # [3, 1, 4, 2](原列表不变)

反转

Python
lst = [1, 2, 3]
lst.reverse()
print(lst)          # [3, 2, 1]

长度与极值

Python
lst = [1, 2, 3, 4, 5]

print(len(lst))     # 5
print(min(lst))     # 1
print(max(lst))     # 5
print(sum(lst))     # 15

复制

Python
lst = [1, 2, 3]

# 浅拷贝
copy1 = lst.copy()
copy2 = lst[:]
copy3 = list(lst)

print(copy1)        # [1, 2, 3]

列表操作对比

操作方法示例返回值
添加末尾appendlst.append(1)None
插入位置insertlst.insert(0, 1)None
扩展列表extendlst.extend([1,2])None
删除值removelst.remove(1)None
删除索引poplst.pop(1)删除元素
查位置indexlst.index(1)索引
统计次数countlst.count(1)次数
排序sortlst.sort()None
反转reverselst.reverse()None

要点总结

  1. 列表用方括号创建,元素有序可变
  2. 索引从 0 开始,负索引从末尾开始
  3. append/insert/extend 添加元素
  4. remove/pop/del 删除元素
  5. sort 原地排序,sorted 返回新列表

📝 发现内容有误?点击此处直接编辑

← 上一篇 Python元组基础
下一篇 → Python序列解包
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库