目錄
1.python 刪除list中元素三種方式(一般)
1. pop()
2.del
3.remove
2.巢狀陣列刪除存在的問題
1.預設刪除最後乙個元素.pop()中也可以傳入引數,為list的索引
2.pop() 接收的是索引,無參的情況下刪除的是最後乙個元素(典型的棧的特性)
3.pop() 存在返回值,返回的是刪除的元素值
list=[11,12,13,14,15]
list=[11,12,13,14,15]
list.pop()
print(list.pop())
print(list)
#output
14[11, 12, 13]
list=[11,12,13,14,15]
del(list[1])
print(list)
#output
[11, 13, 14, 15]
remove() 的引數是具體的元素值,而不是索引,
list=[11,12,13,14,15]
list.remove(11)
print(list)
#output
[12, 13, 14, 15]
存在於巢狀list中, 如果list1中的乙個元素發生改變,list0也會變化.
目的:list0生成後不隨list1的改變而改變
if(len(first_images)==12): #獲取到了1分鐘內的12個影象
first_images.clear()
if(len(grey_images)==5): #獲得了5分鐘的
print("image1前的shape:")
arr1 = np.array(images)
print(arr1.shape)
del(grey_images[0])
print("image1之後的shape:")
arr1 = np.array(images)
print(arr1.shape)
結果:image1前的shape和image1之後的shape並不一樣.刪除元素後比之前的少了乙個元素.因為list存放的是索引,並不是實際的值
solution:
思路:將索引改為實際的值,然後再刪除
具體步驟:
1.建立乙個新的陣列
2.對原陣列的元素依次放入新陣列中.
3.對原陣列進行元素刪除.
這樣新陣列的值並不會發生改變.因為新陣列的元素不再是引用,而是實際的值
if(len(first_images)==12): #獲取到了1分鐘內的12個影象
first_images.clear()
if(len(grey_images)==5): #獲得了5分鐘的
grey_images_val=
for t in range(5):
print("grey的length:")
print(len(grey_images))
print("image1前的shape:")
arr1 = np.array(images)
print(arr1.shape)
grey_images.pop()
print("image1之後的shape:")
arr1 = np.array(images)
print(arr1.shape)
結果:image1前的shape和image1之後的shape此時相同 python 中 list 的 刪除等問題
python 中 list 的 不常見問題 1.list 問題 最近發現乙個list賦值給另乙個,並不像值操作那樣,其實是位址共享的,就是使用remove 函式後原先的值也會被刪掉。list 1,2,3,4,5 l list l.remove 1 print l,list 結果l 2,3,4,5 l...
python中List新增 刪除元素的幾種方法
一 python中list新增元素的幾種方法 2.extend 將乙個列表中每個元素分別新增到另乙個列表中,只接受乙個引數 extend 相當於是將list b 連線到list a上。list1 a b c lis2 list2.extend list1 0 list1 2 list1 a c 3....
python 刪除list中某所有元素
突然記起來一年前剛入行時,領導面試我時提的問題,刪除list中所有等於某個值的元素 比如 刪除 1,2,3,4,1,2,3,4,1,3,4 中所有的2元素 刪除元素常用 remove,pop 方法,remove可以直接刪除某個值 list.remove 1 但是每次只能刪除第乙個,且如果list中不...