最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 列表的清空方式

 更新時(shí)間:2020年01月13日 10:37:30   作者:BYR_jiandong  
今天小編就為大家分享一篇Python 列表的清空方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

情況列表的操作:

del list[:]

list=[]

list[:]=[]

def func(L):                                  
  L.append(1)
  print L
  #L[:]=[]
  #del L[:]
  L = []
  print L
 
L=[]
func(L)
print L

輸出結(jié)果:

[1]

[]

[1]

分析:L是可變數(shù)據(jù)類型,L作為參數(shù),函數(shù)內(nèi)對L的改變,是可以反映到函數(shù)外的L中的,執(zhí)行L.append(1),是在操作,函數(shù)外L所占據(jù)的那塊內(nèi)存,然后執(zhí)行L =[],(函數(shù)內(nèi)的L),想當(dāng)于L指向了另外一個(gè)空間。所以,func(L),print L,輸出[1]。

其實(shí)函數(shù)的本意是將參數(shù)L指向的內(nèi)存清空,用L=[],并不能清空L指向的內(nèi)存

def func(L):
  L.append(1)                                 
  print L
  L[:]=[]
  #del L[:]
  #L = []
  print L
 
L=[]
func(L)
print L

輸出結(jié)果:

[1]
[]
[]

L[:]=[]:把L對應(yīng)的內(nèi)存清空

def func(L): 

  L.append(1)
  print L
  #L[:]=[]
  del L[:]
  #L = []
  print L
 
L=[]
func(L)
print L

分析:

del L[:] 的效果跟L[:]=[]的效果是一樣的。

python 賦值,往往是通過指針完成的,a=b,只是讓a指向了b,并未把b的內(nèi)容拷貝到a

def func(L):                                  
  L.append(1)
  print L
  print id(L)
  #L[:]=[]
  #del L[:]
  L = []
  print id(L)
  print L
 
L=[]
func(L)
print L

輸出結(jié)果:

31460240

31460168

很明顯:通過賦值L=[]后,L指向的內(nèi)存完全不一致了。

類似于c++的引用賦值。

Python 賦值都是引用賦值,相當(dāng)于使用指針來實(shí)現(xiàn)的另一個(gè)例證

list =[]                                    
next = [None,None]
for i in range(10):
  next[0] = i 
  #print id(i)
  #print id(next[0])
  next[1] = i 
  #print id(next)
  list.append(next)
 
print list

輸出結(jié)果:

[[9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9]]

跟我們想要的結(jié)果不一致

list.append(next),僅僅是把next的地址放到list 里面

我們整個(gè)for 循環(huán)就使用了一個(gè)next,只是每次for循環(huán),都在初始的next上進(jìn)行操作,本次的操作會覆蓋上次的結(jié)果

list =[]                                    
next = [None,None]
for i in range(10):
  next[0] = i 
  #print id(i)
  #print id(next[0])
  next[1] = i 
  #print id(next)
  list.append(next)
 
print list
print id(list[0])
print id(list[1])

輸出結(jié)果:

[[9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9], [9, 9]]

36166472

36166472

解決辦法,每次for 循環(huán)都重新分配空間

list =[]                                    
for i in range(10):
  next = [None,None]
  next[0] = i 
  #print id(i)
  #print id(next[0])
  next[1] = i 
  #print id(next)
  list.append(next)
 
print list
print id(list[0])
print id(list[1])

輸出結(jié)果:

[[0, 0], [1, 1], [2, 2], [3, 3], [4, 4], [5, 5], [6, 6], [7, 7], [8, 8], [9, 9]]

15060360

15059712

以上這篇Python 列表的清空方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于Mediapipe+Opencv實(shí)現(xiàn)手勢檢測功能

    基于Mediapipe+Opencv實(shí)現(xiàn)手勢檢測功能

    mediaPipe,他就是一個(gè)集成好的包括人臉關(guān)鍵位點(diǎn)識別、身體關(guān)鍵位點(diǎn)識別、手部關(guān)鍵位點(diǎn)識別的一個(gè)包或者庫,直接調(diào)用就能夠得到它的關(guān)鍵位點(diǎn)信息,本文給大家介紹Mediapipe+Opencv實(shí)現(xiàn)手勢檢測功能,感興趣的朋友一起看看吧
    2022-01-01
  • opencv+python實(shí)現(xiàn)均值濾波

    opencv+python實(shí)現(xiàn)均值濾波

    這篇文章主要為大家詳細(xì)介紹了opencv+python實(shí)現(xiàn)均值濾波,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • python網(wǎng)絡(luò)編程學(xué)習(xí)筆記(一)

    python網(wǎng)絡(luò)編程學(xué)習(xí)筆記(一)

    這篇文章主要介紹了python網(wǎng)絡(luò)編程基礎(chǔ)知識,需要的朋友可以參考下
    2014-06-06
  • Python語法詳解之decorator裝飾器

    Python語法詳解之decorator裝飾器

    裝飾器 decorator 或者稱為包裝器,是對函數(shù)的一種包裝,今天通過本文給大家分享Python語法詳解之decorator裝飾器的相關(guān)知識,感興趣的朋友一起看看吧
    2021-10-10
  • Django框架文件上傳與自定義圖片上傳路徑、上傳文件名操作分析

    Django框架文件上傳與自定義圖片上傳路徑、上傳文件名操作分析

    這篇文章主要介紹了Django框架文件上傳與自定義圖片上傳路徑、上傳文件名操作,結(jié)合實(shí)例形式分析了Django框架文件上傳的原理、步驟、實(shí)現(xiàn)方法以及圖片上傳時(shí)自定義上傳路徑、上傳文件名的相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • python+opencv實(shí)現(xiàn)霍夫變換檢測直線

    python+opencv實(shí)現(xiàn)霍夫變換檢測直線

    這篇文章主要為大家詳細(xì)介紹了python+opencv實(shí)現(xiàn)霍夫變換檢測直線,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • Python入門教程(二十四)Python的迭代器

    Python入門教程(二十四)Python的迭代器

    這篇文章主要介紹了Python入門教程(二十四)Python的迭代器,Python是一門非常強(qiáng)大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-04-04
  • Python學(xué)習(xí)之名字,作用域,名字空間(下)

    Python學(xué)習(xí)之名字,作用域,名字空間(下)

    這篇文章主要介紹了Python學(xué)習(xí)之名字,作用域,名字空間,緊接上一篇文章內(nèi)容展開全文,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助
    2022-05-05
  • Python3連接SQLServer、Oracle、MySql的方法

    Python3連接SQLServer、Oracle、MySql的方法

    這篇文章較詳細(xì)的給大家介紹了Python3連接SQLServer、Oracle、MySql的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2018-06-06
  • python 基于TCP協(xié)議的套接字編程詳解

    python 基于TCP協(xié)議的套接字編程詳解

    這篇文章主要介紹了python 基于TCP協(xié)議的套接字編程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-06-06

最新評論

当阳市| 肇庆市| 延边| 滨海县| 桐庐县| 榕江县| 四川省| 申扎县| 萨嘎县| 浠水县| 和顺县| 宣武区| 宜川县| 松滋市| 寿光市| 通城县| 农安县| 库尔勒市| 营口市| 桐乡市| 迁安市| 阜平县| 上犹县| 金华市| 乐东| 卢龙县| 新营市| 尖扎县| 榆社县| 阿巴嘎旗| 兴城市| 玉溪市| 锦州市| 汾西县| 连州市| 建湖县| 江安县| 德阳市| 金平| 大关县| 中方县|