1、列表元素的增加和刪除
當列表增加和刪除元素時,列表會自動進行記憶體管理,大大減少了程式設計師的負擔。但這個特點涉及列表元素的大量移動,效率較低。除非必要,我們一般只在列表的尾部新增元素或刪除元素,這回大大提高列表的操作效率。
原地修改列表物件,是真正的列表尾部新增新的元素,速度最快,推薦使用。
>>> a = [20,40,50]king')
>>>a
[20, 40, 50, '
king
']
2、+運算子操作
並不是真正的尾部新增元素,而是建立新的列表物件;將原列表的元素和新列表的元素依次複製到心的列表物件種。這樣,會涉及大量的複製操作,對於操作大量元素不建議使用 。
>>>a[20, 40, 50, '
king']
>>>id(a)
62798224
>>> a = a+[60]
>>>a
[20, 40, 50, '
king
', 60]
>>>id(a)
67570704
# 通過如上測試,我們發現變數a的位址發生量變化,也就建立了新的列表物件。
3、extend()方法
將目標列表的所有元素新增到本列表的尾部,屬於原地操作,不建立新的列表物件。
>>>a[20, 40, 50, '
king
', 60]
>>>id(a)
67570704
>>> a.extend([100,200])
>>>id(a)
67570704
>>>a
[20, 40, 50, '
king
', 60, 100, 200]
4、insert() 插入元素
使用insert() 方法可以將指定的元素插入到列表物件的任意指定位置。這樣會讓插入位置後面所有的元素進行移動,會影響處理速度。涉及到大量元素時,盡量避免使用。類似發生這樣移動的函式有remove()、pop()、del() ,他們在刪除非尾部元素時也會發生操作位置後面元素的移動。
>>>a[20, 40, 50, '
king
', 60, 100, 200]
>>> a.insert(2,345)
>>>a
[20, 40, 345, 50, '
king
', 60, 100, 200]
5、乘法擴充套件
使用乘法擴充套件列表,生成乙個新的列表,新列表元素是原列表元素的多次重複。
>>>a[20, 40, 345, 50, '
king
', 60, 100, 200]
>>> b = a*3
>>>b
[20, 40, 345, 50, '
king
', 60, 100, 200, 20, 40, 345, 50, '
king
', 60, 100, 200, 20, 40, 345, 50, '
king
', 60, 100, 200]
>>>a
[20, 40, 345, 50, '
king
', 60, 100, 200]
適用於乘法操作的還有:字串、元組。例如:
Python列表元素的5種新增方式以及效率問題
當列表增加和刪除元素時,列表會自動進行記憶體管理,大大減少了程式設計師的負擔。但這 個特點涉及列表元素的大量移動,效率較低。除非必要,我們一般只在列表的尾部新增元素 或刪除元素,這會大大提高列表的操作效率。二 運算子操作 並不是真正的尾部新增元素,而是建立新的列表物件 將原列表的元素和新列表的元素依...
JS陣列新增元素的三種方式
1 push 結尾新增 陣列.push 元素 引數描述 newelement1 必需。要新增到陣列的第乙個元素。newelement2 可選。要新增到陣列的第二個元素。newelementx 可選。可新增多個元素。2 unshift 頭部新增 陣列.unshift 元素 引數描述 newelemen...
Python 之列表新增元素的3種方法
追加單個元素 list crazyit 20,2 print list crazyit 20,2,fkit 二 追加元組 列表等 extend 方法 追加元組中的所有元素 b list a 30 b list.extend 2,3.1 print b list a 30,2,3.1 a list 3...