本文介绍清空list的四种方法,以及 list=[ ] 和 list.clear() 在使用中的区别(坑)。
1、使用clear()方法
lists = [1, 2, 1, 1, 5] lists.clear() print(lists) >>>[]
2、重新初始化列表:初始化该范围内的列表,初始化列表没有值,即大小为0的列表
lists = [1, 2, 1, 1, 5] lists = [] print(lists) >>>[]
3、使用 “ * = 0 ”
lists = [1, 2, 1, 1, 5] lists *= 0 print(lists) >>>[]
4、使用 del: del可以用来清除范围中的列表元素,如果我们不给出范围,则删除所有元素
lists = [1, 2, 1, 1, 5] del lists[:] print(lists) >>>[] lists2 = [1, 2, 1, 1, 5] del lists2[:2] print(lists2) >>>[1, 1, 5]
但是在使用 list=[ ] 和 list.clear() 的时候,遇到过一个问题:
先使用: list.clear()
first = [] last = [] lists_more = [1, 2, 3, 4, 5, 6] for i in lists_more: first.append(i) last.append(first) first.clear() print(last) >>>[]
而使用 list=[ ] :
first = [] last = [] lists_more = [1, 2, 3, 4, 5, 6] for i in lists_more: first.append(i) last.append(first) first = [] print(last) >>>[[1], [2], [3], [4], [5], [6]]
因此,实际使用中,列表的初始化清空和使用 clear() 清空 二者有区别,涉及到内存空间的引用问题,在面对有列表的复用问题时需要多加小心,最好采用初始化清空。
参考地址:https://www.geeksforgeeks.org/different-ways-to-clear-a-list-in-python/
原文地址:https://www.cnblogs.com/BackingStar/p/10986775.html
时间: 2024-10-10 03:11:48