在 Python 中,想要清空一个列表,常用的有以下几种方式。
- 使用 clear() 方法。
- 使用 del 关键字。
- 使用列表乘法。
- 给列表项重新赋值。
提示: 对于初学的小伙伴来说,我们只需要掌握 clear() 方法即可。这里列举 4 种不同的方式,主要是为了给大家扩展一下思路。
使用 clear() 方法清空列表
在 Python 中,清空列表最简单的方式,就是使用 clear() 方法。
语法:
list.clear()说明:
clear() 方法没有参数,并且它会改变原来的列表。
示例 1:使用 clear() 方法
users = ['Jack', 'Lucy', 'Tony']
users.clear()
print(users)运行结果如下。
[]使用 del 关键字清空列表
在 Python 中,del 关键字可以删除列表某个范围内的元素,如果将范围指定为整个列表,此时就会清空列表。
语法:
del list[:]说明:
list 是一个列表名,list[:] 表示使用 “切片” 的方式来获取整个列表。
示例 2:使用 del 关键字
users = ['Jack', 'Lucy', 'Tony']
del users[:]
print(users)运行结果如下。
[]分析:
实际上,clear() 方法的工作方式和 del 关键字完全相同。我们可以将 clear() 方法看成是一个 “语法糖”。
使用乘法清空列表
Python 列表可以与 “0” 或正整数相乘,如果将其与 “0” 相乘,此时就达到清空列表的目的。
语法:
list * 0说明:
list 是一个列表名。
示例 3:使用列表乘法
users = ['Jack', 'Lucy', 'Tony']
users *= 0
print(users)运行结果如下。
[]给列表项重新赋值
虽然直接将 “[]” 赋值给列表(比如 list = [])似乎可以达到清空列表的目的,但实际上这种方式不会从列表中删除项,它只是删除对项的引用。如果列表本身已分配给另一个变量,它将保留在内存中。
不过我们可以使用 list[:] = [] 的方式来给列表项(注意这里是 “列表项” 而非 “列表”)重新赋值(即给所有项分配一个空值),以达到清空列表的目的。
示例 4:给列表项重新赋值
users = ['Jack', 'Lucy', 'Tony']
users[:] = []
print(users)运行结果如下。
[]