本文目录导读:

在Python中,清空列表有几种常见方法,各有特点:
clear() 方法(推荐)
最直观、最Pythonic的方式
my_list = [1, 2, 3, 4, 5] my_list.clear() print(my_list) # 输出: []
重新赋值空列表
my_list = [1, 2, 3, 4, 5] my_list = [] print(my_list) # 输出: []
注意:这创建了新对象,原列表对象仍存在(如果其他变量引用它)
del 切片删除
my_list = [1, 2, 3, 4, 5] del my_list[:] print(my_list) # 输出: []
乘法赋值
my_list = [1, 2, 3, 4, 5] my_list *= 0 print(my_list) # 输出: []
pop() 循环删除(不推荐)
my_list = [1, 2, 3, 4, 5]
while my_list:
my_list.pop()
print(my_list) # 输出: []
关键区别对比
| 方法 | 是否创建新对象 | 性能 | 推荐场景 |
|---|---|---|---|
clear() |
否 | 快 | 通用场景 |
| 是 | 快 | 想丢弃原列表 | |
del[:] |
否 | 快 | 需要修改原对象 |
*= 0 |
否 | 中等 | 特殊语法场景 |
实际案例
# 示例:清空购物车
cart = ["苹果", "香蕉", "牛奶"]
cart.clear() # 快速清空
print(f"购物车已清空:{cart}")
# 示例:重置游戏状态
scores = [100, 85, 90, 76]
scores[:] = [] # 或使用 clear()
最佳实践:大多数情况下直接使用 clear() 方法即可,代码清晰且高效。