本文介紹清空list的四種方法,以及 list=[ ] 和 list.clear() 在使用中的區別(坑)。python
一、使用clear()方法app
lists = [1, 2, 1, 1, 5] lists.clear() print(lists) >>>[]
二、從新初始化列表:初始化該範圍內的列表,初始化列表沒有值,即大小爲0的列表spa
lists = [1, 2, 1, 1, 5] lists = [] print(lists) >>>[]
三、使用 「 * = 0 」code
lists = [1, 2, 1, 1, 5] lists *= 0 print(lists) >>>[]
四、使用 del: del能夠用來清除範圍中的列表元素,若是咱們不給出範圍,則刪除全部元素blog
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()ast
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=[ ] :class
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/方法