Python列表


Python中最基本的資料結構是列表。一個列表的每個元素被分配一個數位來表示它的位置或索引。 第一個索引為0,第二個索引為1,依此類推。

Python有六種內建的序列型別,但最常見的是列表和元組,將在本教學中看到。

可以在列表上執行各種型別操作。這些操作包括索引,切片,新增,乘法和檢查成員身份。此外,Python還具有內建函式,用於查詢序列的長度和查詢其最大和最小的元素。

1.Python列表

列表是Python中最通用的資料型別,可以寫成方括號之間的逗號分隔值(項)列表。列表中的專案不必是相同的型別,這一點和C語言中陣列有差別。

建立列表就在方括號之間放置不同的逗號分隔值。 例如 -

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];

類似於字串索引,列表索引從0開始,列表可以被切片,連線等等。

2.存取列表中的值

要存取列表中的值,使用方括號進行切片以及索引或索引,以獲取該索引處可用的值。例如 -

#!/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]

3.更新列表

可以通過在分配運算子左側給出切片來更新列表的單個或多個元素,可以使用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

4.刪除列表元素

要刪除列表元素,並且如果確切知道要刪除哪些元素可以使用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包括以下列表函式功能 -

編號 方法 描述
1 cmp(list1, list2) Python 3中不再可用。
2 len(list) 給出列表的總長度。
3 max(list) 從列表中返回最大值的專案。
4 min(list) 從列表中返回最小值的專案。
5 list(seq) 將元組轉換為列表。

Python包括以下列表方法 -

編號 方法 描述
1 list.append(obj) 將物件obj追加到列表中
2 list.count(obj) 返回列表中出現多少次obj的計數
3 list.extend(seq) 返回列表中出現多少次obj的計數
4 list.extend(seq) seq的內容附加到列表中
5 list.insert(index, obj) 將物件obj插入到偏移索引的列表中
6 list.pop(obj = list[-1]) 從列表中刪除並返回最後一個物件或obj
7 list.remove(obj) 從列表中刪除物件obj
8 list.reverse() 反轉列表中的物件
9 list.sort([func]) 排序列表的物件,如果給出,則使用比較函式func來排序