python 清空list的幾種方法


本文介紹清空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/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM