4. 串列的函式與方法

1. 串列的內建函式

在串列中經常被應用的內建函式,如下表所示:

函式使用說明(若lst1 = [10,20,30,40,50]
len()計算串列的長度,可取得串列元素的數目。
例:num = len(lst1) # num ← 5
sum()進行串列中所有元素值的加總。
例:total = sum(lst1) # total ← 150
max()取得串列中元素的最大值。
例:big = max(lst1) # big ← 50
min()取得串列中元素的最小值。
例:small = min(lst1) # small ← 10

串列的方法

在串列中經常被應用的方法,如下表所示:

方法使用說明(若 lst1 = [10,20,30,40,50]
append(value)新增串列元素,將 value 附加到串列最後一個元素的後面。
例:lst1.append(66) # lst1 = [10,20,30,40,50,66]
insert(index,value)在串列註標 index 處插入一個值為 value 的元素。
例:lst1.insert(2,77) # lst1 = [10,20,77,30,40,50]
pop()刪除串列最後一個元素。
例:lst1.pop() # lst1 = [10,20,30,40]
pop(index)刪除串列註標 index 處的元素。
例:lst1.pop(3) # lst1 = [10,20,30,50]
remove(value)刪除串列中第一個值為 value 的元素。
例:lst1.remove(20) # lst1 = [10,30,40,50]
index(value)取得串列中第一個值為 value 的元素註標。
例:n1 = lst1.index(30) # n1 ← 2
count(value)取得串列中出現值為 value 的元素數目。
例:n2 = lst1.count(30) # n2 ← 1
del刪除串列指定註標的元素。
例:lst2 = [11,22,33,44,55,66,77]
del lst2[3] # 刪除註標 3 元素 ⇒ lst2 = [11,22,33,55,66,77]
del lst2[1:5] # 刪除註標 1~4 元素 ⇒ lst2 = [11,66,77]
del lst2[1:5:2] # 刪除註標 1~4 元素,間隔 1 個元素
# lst2 = [11,33,55,66,77]
del lst2[:] # 刪除所有元素 ⇒ lst2 = []
clear()刪除串列所有的元素。
例:lst1.clear() # lst1 = [], 與 del lst1[:] 相同

串列的運算子

在串列中經常被應用的運算子,如下表所示:

運算子使用說明(若 lst1 = [10,20,30,40]
in判斷指定的資料是否存在於串列中。
例:tf = 40 in lst1 # tf ← True
例:tf = 95 in lst1 # tf ← False
not in判斷指定的資料是否不存在於串列中。
例:tf = 40 not in lst1 # tf ← False
例:tf = 95 not in lst1 # tf ← True
=將串列的記憶體位址指定給另一個變數,此時兩者占用同一串列內容。
例:data1 = lst1 # data1 和 lst1 都是 [10,20,30,40]
此時當 data1 中的元素改變,lst1 也會跟著改變。
例:data1[2] = 33 # data1 和 lst1 都是 [10,20,33,40]
+連結兩個串列元素。
例:lst2 = [66,77,88]
lst3 = lst1 + lst2 # lst3 = [10,20,30,40,66,77,88]
*複製串列元素。
例:lst4 = 2 * lst1 # lst4 = [10,20,30,40,10,20,30,40]
lst5 = lst1 * 3 # lst5 = [10,20,30,40,10,20,30,40,10,20,30,40]

串列與字串

一個長字串可以用切割字元(如:空格、逗號、分號、句號…等)進行字串分割,被切割後的子字串,可建立字串串列,而被切割的子字串便為字串的元素。而字串串列的元素,可用連結字元連接成一個長字串。

  1. 字串的分割
    將一個長字串根據切割字元,切割建立成字串串列的語法如下:
    字串串列 = 字串.split(切割字元)

[例] 分割一個長字串st1,被切割後的子字串建立成arr1串列。(檔名:split.py)

  1. 字串的連結
    將字串串列的元素使用連結字元,連接成一個長字串的語法如下:
    字串 = 連結字元.join(字串串列)

[例] 將arr2字串串列元素連接成一個長字串st2。(檔名:join.py)

[簡例] 建立空串列後,使用者可輸入整數決定元素的數量,再依序輸入元素的內容。 (檔名:dynamic.py)


相關主題與延伸閱讀