久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

【編測(cè)編學(xué)】零基礎(chǔ)學(xué)python_07_列表(修改、添加和刪除元素)

 編測(cè)編學(xué)學(xué)院 2020-11-27
你創(chuàng)建的大多數(shù)列表都將是動(dòng)態(tài)的,,這意味著列表創(chuàng)建后,,將隨著程序的運(yùn)行增刪元素。例如,,你創(chuàng)建一個(gè)游戲,,要求玩家射殺從天而降的外星人;為此,,可在開(kāi)始時(shí)將一些外星人存儲(chǔ)在列表中,,然后每當(dāng)有外星人被射殺時(shí),都將其從列表中刪除,,而每次有新的外星人出現(xiàn)在屏幕上時(shí),,都將其添加到列表中。在整個(gè)游戲運(yùn)行期間,,外星人列表的長(zhǎng)度將不斷變化,。


修改列表元素
修改列表元素的語(yǔ)法與訪問(wèn)列表元素的語(yǔ)法類(lèi)似。要修改列表元素,可指定列表名和要修改的元素的索引,,再指定該元素的新值,。 
例如,假設(shè)有一個(gè)摩托車(chē)列表,,其中的第一個(gè)元素為'honda' ,,如何修改它的值呢?
我們首先定義一個(gè)摩托車(chē)列表,,其中的第一個(gè)元素為'honda' ,。接下來(lái),我們將第一個(gè)元素的值改為'ducati' ,。輸出表明,,第一個(gè)元素的值確實(shí)變了,但 
其他列表元素的值沒(méi)變: 
  1. motorcycles = ['honda', 'yamaha', 'suzuki']

  2. print(motorcycles)

  3. motorcycles[0] = 'harley'

  4. print(motorcycles)

復(fù)制代碼



你可以修改任何列表元素的值,,而不僅僅是第一個(gè)元素的值,。 

在列表中添加元素 
你可能出于眾多原因要在列表中添加新元素,例如,,你可能希望游戲中出現(xiàn)新的外星人,、添加可視化數(shù)據(jù)或給網(wǎng)站添加新注冊(cè)的用戶,。Python提供了多種在既有列表中添加新數(shù)據(jù)的方式,。 
1. 在列表末尾添加元素
在列表中添加新元素時(shí),,最簡(jiǎn)單的方式是將元素附加到列表末尾。給列表附加元素時(shí),,它將添加到列表末尾,。繼續(xù)使用前一個(gè)示例中的列表,,在其末尾添加新元素'ducati' :
  1. motorcycles = ['honda', 'yamaha', 'suzuki']

  2. print(motorcycles)

  3. motorcycles.append('harley')

  4. print(motorcycles)

復(fù)制代碼


方法append() 將元素'harley' 添加到了列表末尾,,而不影響列表中的其他所有元素: 

方法append() 讓動(dòng)態(tài)地創(chuàng)建列表易如反掌,,例如,你可以先創(chuàng)建一個(gè)空列表,,再使用一系列的append() 語(yǔ)句添加元素,。下面來(lái)創(chuàng)建一個(gè)空列表,,再在其中添加元素'honda' 、'yamaha' 和'suzuki' :
  1. motorcycles = []

  2. motorcycles.append('honda')

  3. motorcycles.append('yamaha')

  4. motorcycles.append('suzuki')

  5. print(motorcycles)

復(fù)制代碼


最終的列表與前述示例中的列表完全相同: 

這種創(chuàng)建列表的方式極其常見(jiàn),因?yàn)榻?jīng)常要等程序運(yùn)行后,,你才知道用戶要在程序中存儲(chǔ)哪些數(shù)據(jù),。為控制用戶,,可首先創(chuàng)建一個(gè)空列表,,用于存儲(chǔ)用戶將要輸入的值,,然后將用戶提供的每個(gè)新值附加到列表中。 



2. 在列表中插入元素 
使用方法insert() 可在列表的任何位置添加新元素,。為此,,你需要指定新元素的索引和值。 
  1. motorcycles = ['honda', 'yamaha', 'suzuki']

  2. motorcycles.insert(0, 'ducati')

  3. print(motorcycles)

復(fù)制代碼

在這個(gè)示例中,,值'ducati' 被插入到了列表開(kāi)頭;方法insert() 在索引0 處添加空間,,并將值'ducati' 存儲(chǔ)到這個(gè)地方,。這種操作將列表中既有的每個(gè)元素都右 
移一個(gè)位置:

3.2.3 
列表中刪除元素 
你經(jīng)常需要從列表中刪除一個(gè)或多個(gè)元素,。例如,玩家將空中的一個(gè)外星人射殺后,,你很可能要將其從存活的外星人列表中刪除,;當(dāng)用戶在你創(chuàng)建的Web應(yīng)用中注銷(xiāo)其賬戶時(shí),, 
你需要將該用戶從活躍用戶列表中刪除,。你可以根據(jù)位置或值來(lái)刪除列表中的元素,。 
1. 使
使用
用del 語(yǔ)
語(yǔ)句
句刪
刪除
除元
元素
素 
如果知道要?jiǎng)h除的元素在列表中的位置,,可使用del 語(yǔ)句。 
motorcycles = ['honda', 'yamaha', 'suzuki'] 
print(motorcycles) 
? del motorcycles[0] 
print(motorcycles) 
? 處的代碼使用del 刪除了列表motorcycles 中的第一個(gè)元素——'honda' : 
['honda', 'yamaha', 'suzuki'] 
['yamaha', 'suzuki']使用del 可刪除任何位置處的列表元素,,條件是知道其索引。下例演示了如何刪除前述列表中的第二個(gè)元素——'yamaha' : 
motorcycles = ['honda', 'yamaha', 'suzuki'] 
print(motorcycles) 
del motorcycles[1] 
print(motorcycles) 
下面的輸出表明,已經(jīng)將第二款摩托車(chē)從列表中刪除了: 
['honda', 'yamaha', 'suzuki'] 
['honda', 'suzuki'] 
在這兩個(gè)示例中,,使用del 語(yǔ)句將值從列表中刪除后,,你就無(wú)法再訪問(wèn)它了。 
2. 使
使用
用方
方法
法pop() 刪
刪除
除元
元素
素 
有時(shí)候,你要將元素從列表中刪除,,并接著使用它的值。例如,,你可能需要獲取剛被射殺的外星人的 x 和 y 坐標(biāo),,以便在相應(yīng)的位置顯示爆炸效果,;在Web應(yīng)用程序中,,你可能 
要將用戶從活躍成員列表中刪除,,并將其加入到非活躍成員列表中,。 
方法pop() 可刪除列表末尾的元素,,并讓你能夠接著使用它。術(shù)語(yǔ)彈
彈出
出 (pop)源自這樣的類(lèi)比:列表就像一個(gè)棧,,而刪除列表末尾的元素相當(dāng)于彈出棧頂元素,。 
下面從列表motorcycles 中彈出一款摩托車(chē): 
? motorcycles = ['honda', 'yamaha', 'suzuki'] 
print(motorcycles) 
? popped_motorcycle = motorcycles.pop() 
? print(motorcycles) 
? print(popped_motorcycle) 
我們首先定義并打印了列表motorcycles (見(jiàn)?),。接下來(lái),,我們從這個(gè)列表中彈出一個(gè)值,,并將其存儲(chǔ)到變量popped_motorcycle 中(見(jiàn)?),。然后我們打印這個(gè)列 
表,,以核實(shí)從其中刪除了一個(gè)值(見(jiàn)?)。最后,,我們打印彈出的值,,以證明我們依然能夠訪問(wèn)被刪除的值(見(jiàn)?)。 
輸出表明,,列表末尾的值'suzuki' 已刪除,,它現(xiàn)在存儲(chǔ)在變量popped_motorcycle 中: 
['honda', 'yamaha', 'suzuki'] 
['honda', 'yamaha'] 
suzuki 
方法pop() 是怎么起作用的呢?假設(shè)列表中的摩托車(chē)是按購(gòu)買(mǎi)時(shí)間存儲(chǔ)的,,就可使用方法pop() 打印一條消息,,指出最后購(gòu)買(mǎi)的是哪款摩托車(chē): 
motorcycles = ['honda', 'yamaha', 'suzuki'] 
last_owned = motorcycles.pop() 
print("The last motorcycle I owned was a " + last_owned.title() + ".") 
輸出是一個(gè)簡(jiǎn)單的句子,指出了最新購(gòu)買(mǎi)的是哪款摩托車(chē): 
The last motorcycle I owned was a Suzuki. 
3. 彈
彈出
出列
列表
表中
中任
任何
何位
位置
置處
處的
的元
元素
素 
實(shí)際上,,你可以使用pop() 來(lái)刪除列表中任何位置的元素,,只需在括號(hào)中指定要?jiǎng)h除的元素的索引即可。 
motorcycles = ['honda', 'yamaha', 'suzuki'] 
? first_owned = motorcycles.pop(0) 
? print('The first motorcycle I owned was a ' + first_owned.title() + '.') 
首先,,我們彈出了列表中的第一款摩托車(chē)(見(jiàn)?),,然后打印了一條有關(guān)這輛摩托車(chē)的消息(見(jiàn)?)。輸出是一個(gè)簡(jiǎn)單的句子,,描述了我購(gòu)買(mǎi)的第一輛摩托車(chē): 
The first motorcycle I owned was a Honda. 
別忘了,,每當(dāng)你使用pop() 時(shí),被彈出的元素就不再在列表中了,。 
如果你不確定該使用del 語(yǔ)句還是pop() 方法,,下面是一個(gè)簡(jiǎn)單的判斷標(biāo)準(zhǔn):如果你要從列表中刪除一個(gè)元素,且不再以任何方式使用它,就使用del 語(yǔ)句,;如果你要在刪除元 
素后還能繼續(xù)使用它,,就使用方法pop() 。 
4. 根
根據(jù)
據(jù)值
值刪
刪除
除元
元素
素 
有時(shí)候,,你不知道要從列表中刪除的值所處的位置,。如果你只知道要?jiǎng)h除的元素的值,可使用方法remove() ,。 
例如,,假設(shè)我們要從列表motorcycles 中刪除值'ducati' 。motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati'] 
print(motorcycles) 
? motorcycles.remove('ducati') 
print(motorcycles) 
? 處的代碼讓Python確定'ducati' 出現(xiàn)在列表的什么地方,,并將該元素刪除: 
['honda', 'yamaha', 'suzuki', 'ducati'] 
['honda', 'yamaha', 'suzuki'] 
使用remove() 從列表中刪除元素時(shí),,也可接著使用它的值。下面刪除值'ducati' ,,并打印一條消息,,指出要將其從列表中刪除的原因: 
? motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati'] 
print(motorcycles) 
? too_expensive = 'ducati' 
? motorcycles.remove(too_expensive) 
print(motorcycles) 
? print("\nA " + too_expensive.title() + " is too expensive for me.") 
在?處定義列表后,我們將值'ducati' 存儲(chǔ)在變量too_expensive 中(見(jiàn)?),。接下來(lái),,我們使用這個(gè)變量來(lái)告訴Python將哪個(gè)值從列表中刪除(見(jiàn)?)。最后,, 
值'ducati' 已經(jīng)從列表中刪除,,但它還存儲(chǔ)在變量too_expensive 中(見(jiàn)?),讓我們能夠打印一條消息,,指出將'ducati' 從列表motorcycles 中刪除的原因: 
['honda', 'yamaha', 'suzuki', 'ducati'] 
['honda', 'yamaha', 'suzuki'] 
A Ducati is too expensive for me. 


注意
意 方法remove() 只刪除第一個(gè)指定的值,。如果要?jiǎng)h除的值可能在列表中出現(xiàn)多次,就需要使用循環(huán)來(lái)判斷是否刪除了所有這樣的值,。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多