我有一個串列,它會變得非常大。所以我會將串列保存在我的硬碟上,然后繼續使用一個空串列。我的問題是:當我執行 myList[] 時,舊資料會被洗掉還是會保留在 Ram 上的某個地方。我擔心, myList 的指標只會指向其他地方,并且不會修改舊資料。
myList = []
for i in range(bigNumber1)
for k in range(bigNumber2)
myList.append( bigData(i,k) )
savemat("data" str(i), "data":{myList})
myList = []
uj5u.com熱心網友回復:
再會。
在 python 和許多其他編程語言中,參考未使用物件的物件指標將由垃圾收集器收集,該功能會查找這些物件并將其從記憶體中清除。這是如何在鉤子下完成的,可以在這里更詳細地閱讀:
https://stackify.com/python-garbage-collection/
快樂編碼!
uj5u.com熱心網友回復:
Python 使用垃圾收集進行記憶體管理(在此處閱讀更多內容)。
垃圾收集器嘗試回收由程式分配但不再被參考的記憶體——也稱為垃圾。
因此您的資料將被自動洗掉。但是,如果您想確保記憶體在特定點是空閑的,您可以直接呼叫 GC
import gc
gc.collect()
但這并不推薦。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/318811.html