Python3列表


在Python中的最基本資料結構是序列。序列中的每個元素被分配一個號碼 - 它的位置或索引。第一個索引是0,第二個索引是1,...依此類推。
Python中有六種內建型別的序列,但最常見的是列表和元組,我們將在本教學中看到。

有一些事情,可以使用序列型別來做。這些操作包括索引,切片,加,乘,和檢查成員運算。此外,Python已經有內建函式來查詢序列的長度和查詢其最大和最小的元素。

Python列表

列表在Python提供一個最通用的資料型別,它可以寫成逗號分隔值地方括號(專案)的列表。列表重要的一點是,在列表中的專案不必是同一型別。

建立一個列表是在方括號中以逗號分隔放置不同值。例如 -
list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];
與字串索引類似,列表的索引從0開始,並列出可切片,聯接,等等。

存取列表中的值

要存取列表值,請使用方括號連同索引或索引切片獲得索引對應可用的值。例如 -
#!/usr/bin/python3

list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]

print ("list1[0]: ", list1[0])
print ("list2[1:5]: ", list2[1:5])
當執行上面的程式碼,它產生以下結果 -
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]

更新列表

可以通過給賦值運算子到左側切片更新列表中的單個或多個元素, 並且可以使用 append()方法中加入一元素。例如 -

#!/usr/bin/python3

list = ['physics', 'chemistry', 1997, 2000]

print ("Value available at index 2 : ", list[2])
list[2] = 2001
print ("New value available at index 2 : ", list[2])
註:append()方法將在後續部分討論。
當執行上面的程式碼,它產生以下結果 -
Value available at index 2 :
1997
New value available at index 2 :
2001

刪除列表元素

要刪除列表元素,如果你知道要刪除哪些元素那麼可以使用del語句,或者如果你不知道,那麼 remove()方法。例如 -
#!/usr/bin/python3
list = ['physics', 'chemistry', 1997, 2000]

print (list)
del list[2]
print ("After deleting value at index 2 : ", list)

當執行上面的程式碼,它產生以下結果 -

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :  ['physics', 'chemistry', 2000]
注意: remove() 方法將在後續部分討論。

基本列表操作

列表的 + 和 * 運算子就像字串中一樣; 它們在這裡的意思是串聯和重複,接受這個結果是一個新的列表,而不是一個字串。

事實上,列表響應所有和我們在先前章節中的字串使用的順序操作一樣。
Python表示式 結果 描述
len([1, 2, 3]) 3 長度
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6]
串接
['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!']
重複
3 in [1, 2, 3] True 成員運算
for x in [1,2,3] : print (x,end=' ') 1 2 3 疊代

索引,切片和矩陣

因為列表是序列,索引和切片,以所它與字串操作的工作方式相同。
假設以下的輸入 -
L=['C++'', 'Java', 'Python']

 

Python表示式 結果 描述
L[2] 'Python'
偏移位從零開始
L[-2] 'Java'
負值:從右邊計數
L[1:] ['Java', 'Python']
取切片部分

內建列表函式與方法:

Python包括以下列表函式 -

SN
函式與描述
1

cmp(list1, list2)

比較兩個列表中的元素
2

len(list)

計算列表的長度
3

max(list)

從列表項中返回最大值
4

min(list)

從列表項中返回最小值
5

list(seq)


轉換一個元組為列表
Python包括以下列表的方法
SN
方法與描述
1

list.append(obj)

新增 obj 物件到列表
2

list.count(obj)

返回obj物件在列表中出現的次數
3

list.extend(seq)

新增seq的內容到列表中
4

list.index(obj)

返回列表中 obj 物件對應最低索引值
5

list.insert(index, obj)

插入 obj 物件到列表的 index 索引位置
6

list.pop(obj=list[-1])

移除並返回列表中最後一個物件或 obj 物件
7

list.remove(obj)

從列表中移除 obj 物件
8

list.reverse()

倒轉列表物件位置
9

list.sort([func])

排序列表的物件,如果給定請使用func比較