1. 程式人生 > >四、列表簡介

四、列表簡介

首字母 ali 我們 cati insert 有序集合 pri info 存儲

3.1 列表是什麽

列表由一系列按特定順序排列的元素組成。

在Python中,用方括號([ ])來表示列表,並用逗號來分隔其中的元素。

bicycles = [trek,cannondale,redline,specialized]
print (bicycles)

將該列表打印出來,Python將打印列表的內部表示,包括方括號:

技術分享圖片

鑒於這不是你要讓用戶看到的輸出,下面來學習如何訪問列表元素。

3.1.1 訪問列表元素

列表是有序集合,因此要訪問列表的任何元素,只需將該元素的位置或索引告訴Python即可。要訪問列表的元素,可指出列表的名稱,再指出元素的索引,並將其放在方括號內。

   bicycles = [trek,cannondale,redline,specialized]
① print (bicycles[0])

①處演示了訪問列表元素的語法。當你請求獲取列表元素時,Python只返回該元素,而不包括方括號和引號:

技術分享圖片

還可以使用方法title()讓元素‘trek’的格式更整潔:

bicycles = [trek,cannondale,redline,specialized]
print (bicycles[0].title())

技術分享圖片

這個示例的輸出與前一個示例相同,只是首字母T是大寫的。

3.1.2 索引從0而不是1開始

在Python中,第一個列表的元素的索引為0,而不是1.在大多數編程語言中都是如此,這與列表操作的底層實現相關。如果結果出乎意料,請看看你是否煩了簡單的差一錯誤。

第二個列表元素的索引為1。根據這種簡單的計數方式,要訪問列表的任何元素,都可將其位置減1,並將結果作為索引。例如,要訪問第四個元素,可使用索引3。

下面的代碼訪問索引1和3處的自行車:

bicycles = [trek,cannondale,redline,specialized]
print (bicycles[1])
print(bicycles[3])

這些代碼返回列表中的第二個和第四個元素:

技術分享圖片

Python為訪問最後一個列表元素提供了一種特殊語法。通過將索引指定為 -1 ,可讓Python返回最後一個列表元素:

bicycles = [trek,cannondale,redline,specialized]
print (bicycles[-1])

技術分享圖片

這種語法很有用,因為你經常需要在不知道列表長度的情況下訪問最後的元素。這種約定也適用於其他負數索引,例如,索引-2返回倒數第二個列表元素,索引-3返回倒數第三個列表元素,以此類推。

3.1.3 使用列表中的各個值

可像使用其他變量一樣使用列表中的各個值。例如,你可以使用拼接根據列表中的值來創建消息。

    bicycles = [trek,cannondale,redline,specialized]
1.  message = "My first bicycle was a "+bicycles[0].title()+"."
    print (message)

我們使用bicycles[0]的值生成了一個句子,並將其存儲在變量message中(見1.)。輸出是一個簡單的句子,其中包含列表中的第一款自行車:

技術分享圖片

3.2 修改、添加和刪除元素

修改列表元素的語法與訪問列表元素的語法類似。要修改列表元素,可指定列表名和要修改的元素的索引,再指定該元素的新值。

例如,假設有一個摩托車列表,其中的第一個元素為‘honda‘,如何修改它的值呢?

motorcycles.py

①  motorcycles = [honda,yamaha,suzuki]
   print(motorcycles)
 

 ② motorcycles[0] = ducati
    print(motorcycles)

我們首先定義一個摩托車列表,其中的一個元素為‘honda‘(見①)。接下來,我們將第一個元素的值改為‘ducati‘(見②)。輸出表明,第一個元素的值確實變了,但其他列表元素的值沒變:

技術分享圖片

3.2.2 在列表中添加元素

1.在列表末尾添加元素

在列表中添加元素時,最簡單的方式是將元素附加到列表末尾。給列表附加元素時,它將添加到列表末尾。繼續使用前一個示例中的列表,在其末尾添加新元素’ducati‘:

   motorcycles = [honda,yamaha,suzuki]
   print(motorcycles)


①  motorcycles.append(ducati)
   print(motorcycles)

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

技術分享圖片

2.在列表中刪除元素

使用方法inset()可在列表的任何位置添加新元素。為此,你需要指定新元素的索引和值。

    motorcycles = [honda,yamaha,suzuki]
    print(motorcycles)


①  motorcycles.insert(0,ducati)
    print(motorcycles)

在這個示例中,值’ducati‘被插入到了列表開頭(見①);方法insert()在索引0處添加空間,並將值’ducati‘存儲到這個地方。這種操作將列表中既有的每個元素都右移一個位置:

技術分享圖片

四、列表簡介