91aaa在线国内观看,亚洲AV午夜福利精品一区二区,久久偷拍人视频,久久播这里有免费视播

<strong id="fvuar"></strong>

  • <sub id="fvuar"><dl id="fvuar"><em id="fvuar"></em></dl></sub>

    1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

      手機(jī)站
      千鋒教育

      千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

      千鋒教育

      掃一掃進(jìn)入千鋒手機(jī)站

      領(lǐng)取全套視頻
      千鋒教育

      關(guān)注千鋒學(xué)習(xí)站小程序
      隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

      當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > python 列表元素的增加

      python 列表元素的增加

      來(lái)源:千鋒教育
      發(fā)布人:xqq
      時(shí)間: 2023-11-08 04:01:37 1699387297

      可以使用“+”運(yùn)算符將元素添加到列表中。

      >>>aList=[3,4,5]

      >>>aList=aList+[7]

      >>>aList

      [3,4,5,7]

      嚴(yán)格意義上來(lái)講,這并不是真的為列表添加元素,而是創(chuàng)建了一個(gè)新列表,并將原列表中的元素和新元素依次復(fù)制到新列表的內(nèi)存空間。由于涉及大量元素的復(fù)制,該操作速度較慢,在涉及大量元素添加時(shí)不建議使用該方法。

      使用列表對(duì)象的append()方法在當(dāng)前列表尾部追加元素,原地修改列表,是真正意義上的在列表尾部添加元素,速度較快。

      >>>aList.append(9)

      >>>aList

      [3,4,5,7,9]

      所謂“原地”,是指不改變列表在內(nèi)存中的首地址。

      python采用的是基于值的自動(dòng)內(nèi)存管理方式,當(dāng)為對(duì)象修改值時(shí),并不是真的直接修改變量的值,而是使變量指向新的值,這對(duì)于Python所有類(lèi)型的變量都是一樣的。

      >>>a=[1,2,3]

      >>>id(a)#返回對(duì)象的內(nèi)存地址

      20230752

      >>>a=[1,2]

      >>>id(a)

      20338208

      列表中包含的是元素值的引用,而不是直接包含元素值。

      如果是直接修改序列變量的值,則與Python普通變量的情況是一樣的

      如果是通過(guò)下標(biāo)來(lái)修改序列中元素的值或通過(guò)可變序列對(duì)象自身提供的方法來(lái)增加和刪除元素時(shí),序列對(duì)象在內(nèi)存中的起始地址是不變的,僅僅是被改變值的元素地址發(fā)生變化,也就是所謂的“原地操作”。

      >>>a=[1,2,4]

      >>>b=[1,2,3]

      >>>a==b

      False

      >>>id(a)==id(b)

      False

      >>>id(a[0])==id(b[0])

      True

      >>>a=[1,2,3]

      >>>id(a)

      25289752

      >>>a.append(4)

      >>>id(a)

      25289752

      >>>a.remove(3)

      >>>a

      [1,2,4]

      >>>id(a)

      25289752

      >>>a[0]=5

      >>>a

      [5,2,4]

      >>>id(a)

      25289752

      使用列表對(duì)象的extend()方法可以將另一個(gè)迭代對(duì)象的所有元素添加至該列表對(duì)象尾部。通過(guò)extend()方法來(lái)增加列表元素也不改變其內(nèi)存首地址,屬于原地操作。

      >>>a.extend([7,8,9])

      >>>a

      [5,2,4,7,8,9]

      >>>id(a)

      25289752

      >>>aList.extend([11,13])

      >>>aList

      [3,4,5,7,9,11,13]

      >>>aList.extend((15,17))

      >>>aList

      [3,4,5,7,9,11,13,15,17]

      使用列表對(duì)象的insert()方法將元素添加至列表的指定位置。

      >>>aList.insert(3,6)#在下標(biāo)為3的位置插入元素6

      >>>aList

      [3,4,5,6,7,9,11,13,15,17]

      應(yīng)盡量從列表尾部進(jìn)行元素的增加與刪除操作。

      列表的insert()可以在列表的任意位置插入元素,但由于列表的自動(dòng)內(nèi)存管理功能,insert()方法會(huì)引起插入位置之后所有元素的移動(dòng),這會(huì)影響處理速度。

      類(lèi)似的還有后面介紹的remove()方法以及使用pop()函數(shù)彈出列表非尾部元素和使用del命令刪除列表非尾部元素的情況。

      importtime

      defInsert():

      a=[]

      foriinrange(10000):

      a.insert(0,i)

      defAppend():

      a=[]

      foriinrange(10000):

      a.append(i)

      start=time.time()

      foriinrange(10):

      Insert()

      print('Insert:',time.time()-start)

      start=time.time()

      foriinrange(10):

      Append()

      print('Append:',time.time()-start)

      上面代碼運(yùn)行結(jié)果如下:

      Insert:0.578000068665

      Append:0.0309998989105

      使用乘法來(lái)擴(kuò)展列表對(duì)象,將列表與整數(shù)相乘,生成一個(gè)新列表,新列表是原列表中元素的重復(fù)。

      >>>aList=[3,5,7]

      >>>bList=aList

      >>>id(aList)

      57091464

      >>>id(bList)

      57091464

      >>>aList=aList*3

      >>>aList

      [3,5,7,3,5,7,3,5,7]

      >>>bList

      [3,5,7]

      >>>id(aList)

      57092680

      >>>id(bList)

      57091464

      當(dāng)使用*運(yùn)算符將包含列表的列表重復(fù)并創(chuàng)建新列表時(shí),并不是復(fù)制子列表值,而是復(fù)制已有元素的引用。因此,當(dāng)修改其中一個(gè)值時(shí),相應(yīng)的引用也會(huì)被修改。

      >>>x=[[None]*2]*3

      >>>x

      [[None,None],[None,None],[None,None]]

      >>>x[0][0]=5

      >>>x

      [[5,None],[5,None],[5,None]]

      >>>x=[[1,2,3]]*3

      >>>x[0][0]=10

      >>>x

      [[10,2,3],[10,2,3],[10,2,3]]

      以上內(nèi)容為大家介紹了python列表元素的增加,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

      聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
      10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
      請(qǐng)您保持通訊暢通,專(zhuān)屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
      免費(fèi)領(lǐng)取
      今日已有369人領(lǐng)取成功
      劉同學(xué) 138****2860 剛剛成功領(lǐng)取
      王同學(xué) 131****2015 剛剛成功領(lǐng)取
      張同學(xué) 133****4652 剛剛成功領(lǐng)取
      李同學(xué) 135****8607 剛剛成功領(lǐng)取
      楊同學(xué) 132****5667 剛剛成功領(lǐng)取
      岳同學(xué) 134****6652 剛剛成功領(lǐng)取
      梁同學(xué) 157****2950 剛剛成功領(lǐng)取
      劉同學(xué) 189****1015 剛剛成功領(lǐng)取
      張同學(xué) 155****4678 剛剛成功領(lǐng)取
      鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
      董同學(xué) 138****2867 剛剛成功領(lǐng)取
      周同學(xué) 136****3602 剛剛成功領(lǐng)取
      相關(guān)推薦HOT
      python 序列化與反序列化如何使用?

      根據(jù)某些規(guī)則,將內(nèi)存數(shù)據(jù)保存到文件中時(shí),文件是字節(jié)序列,因此必須將內(nèi)存數(shù)據(jù)轉(zhuǎn)換為字節(jié)序列,然后輸出到文件,這就是序列化;反之,從文件的...詳情>>

      2023-11-08 07:01:37
      Python企業(yè)應(yīng)用的優(yōu)缺點(diǎn)

      Python是軟件開(kāi)發(fā)領(lǐng)域一朵誘人的奇葩:人們經(jīng)常把Python看作是一種起到縫合作用的嚴(yán)格腳本語(yǔ)言,不過(guò)卻很少有人意識(shí)到Python已經(jīng)足夠強(qiáng)大到應(yīng)用...詳情>>

      2023-11-08 06:25:37
      python 關(guān)鍵字參數(shù)

      可變參數(shù)允許你傳入0個(gè)或任意個(gè)參數(shù),這些可變參數(shù)在函數(shù)調(diào)用時(shí)自動(dòng)組裝為一個(gè)tuple。而關(guān)鍵字參數(shù)允許你傳入0個(gè)或任意個(gè)含參數(shù)名的參數(shù),這些...詳情>>

      2023-11-08 04:59:13
      python 列表元素的刪除

      使用del命令刪除列表中的指定位置上的元素。>>>a_list=[3,5,7,9,11]>>>dela_list[1]>>>a_list[3,7,9,11]使用列表的pop()方法刪除并返回指定位置...詳情>>

      2023-11-08 03:58:01
      python 插入排序

      原理插入排序(InsertionSort)是一種簡(jiǎn)單直觀的排序算法。它的工作原理是通過(guò)構(gòu)建有序序列,對(duì)于未排序數(shù)據(jù),在已排序序列中從后向前掃描,找到...詳情>>

      2023-11-08 02:56:48
      快速通道