python 中del 的用法 python 中del 的用法

python 中del 的用法

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

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

由於python都是引用,而python有GC機制,所以,del語句作用在變量上,而不是數據對象上。

  1. if __name__=='__main__':
  2. a=1 # 對象 1 被 變量a引用,對象1的引用計數器爲1
  3. b=a # 對象1 被變量b引用,對象1的引用計數器加1
  4. c=a #1對象1 被變量c引用,對象1的引用計數器加1
  5. del a #刪除變量a,解除a對1的引用
  6. del b #刪除變量b,解除b對1的引用
  7. print(c) #最終變量c仍然引用1

del刪除的是變量,而不是數據。


另外。關於list。

  1. if __name__=='__main__':
  2. li=[1,2,3,4,5] #列表本身不包含數據1,2,3,4,5,而是包含變量:li[0] li[1] li[2] li[3] li[4]
  3. first=li[0] #拷貝列表,也不會有數據對象的複製,而是創建新的變量引用
  4. del li[0]
  5. print(li) #輸出[2, 3, 4, 5]
  6. print(first) #輸出 1

原文l鏈接:https://blog.csdn.net/love1code/article/details/47276683

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章