python裏面「+」與append()的區別,而且用代碼測試兩者的運行速度。

若是你對內存地址的概念不是很理解的話,很容易就認爲兩者用法同樣,應該沒什麼大的區別,其實兩者區別仍是比較明顯的。app

先來看「+」,這個字符表示爲列表添加元素,嚴格意義來說,"+"並非真的爲列表添加元素,而是建立一個新的列表,而且將原列表的元素和要添加的元素依次複製到新列表的內存空間裏面。會改變列表內存中的地址。測試

append()方法,是在原有的列表裏面添加元素,不會改變列表的內存中的首地址。spa

下面我將用代碼來測試一下兩者的添加速度:code

 1 import time  2 
 3 result = []  4 start = time.time()  5 for i in range(10000):  6     result = result + [i]  7 print(len(result), ",", time.time() - start)  8 
 9 result = [] 10 start = time.time() 11 for i in range(10000): 12  result.append(i) 13 print(len(result), ",", time.time() - start)

運行結果:blog

從運行結果來看,使用append()的添加速度要快於"+"。內存

相關文章
相關標籤/搜索