python 中的 del 使用方法

2021-09-24 13:41:26 字數 754 閱讀 7381

python中的del用法比較特殊,新手學習往往產生誤解,弄清del的用法,可以幫助深入理解python的記憶體方面的問題。

python的del不同於c的free和c++的delete。

由於python都是引用,而python有gc機制,所以,del語句作用在變數上,而不是資料物件上。

if __name__=='__main__':  

a=1 # 物件 1 被 變數a引用,物件1的引用計數器為1

b=a # 物件1 被變數b引用,物件1的引用計數器加1

c=a #1物件1 被變數c引用,物件1的引用計數器加1

del a #刪除變數a,解除a對1的引用

del b #刪除變數b,解除b對1的引用

print(c) #最終變數c仍然引用1

del刪除的是變數,而不是資料。

if __name__=='__main__':  

li=[1,2,3,4,5] #列表本身不包含資料1,2,3,4,5,而是包含變數:li[0] li[1] li[2] li[3] li[4]

first=li[0] #拷貝列表,也不會有資料物件的複製,而是建立新的變數引用

del li[0]

print(li) #輸出[2, 3, 4, 5]

print(first) #輸出 1

Python中的常見特殊方法 del方法

del 方法用於銷毀python物件 在任何python物件將被系統 的時候,系統都會自動呼叫這個方法。但是不要以為對乙個變數執行del操作,該變數引用的物件就會被 當然不是,如果有多個變數引用它,del其中乙個變數是不會 該物件的。栗子如下 1 coding utf 8 2class item 3...

python 中del 的用法

python中的del用法比較特殊,新手學習往往產生誤解,弄清del的用法,可以幫助深入理解python的記憶體方面的問題。python的del不同於c的free和c 的delete。由於python都是引用,而python有gc機制,所以,del語句作用在變數上,而不是資料物件上。if name ...

python中的del用法

python中的del用法比較特殊,新手學習往往產生誤解,弄清del的用法,可以幫助深入理解python的記憶體方面的問題。python的del不同於c的free和c 的delete。由於python都是引用,而python有gc機制,所以,del語句作用在變數上,而不是資料物件上。if name ...